#python #python-3.x
Вопрос:
Таковы инструкции к упражнению.
В convert.py, определите функцию decimalToRep, которая возвращает представление целого числа в заданной базе.
Два аргумента должны быть целым числом и основанием. Функция должна возвращать строку. Он должен использовать таблицу поиска, которая связывает целые числа с цифрами. Была предоставлена основная функция, которая проверяет функцию преобразования с числами в нескольких базах.
Когда я запускаю приведенный ниже код, я получаю правильные результаты.
def decimalToRep(num,base1):
base = ""
while num > 0:
one = int(num % base1)
if one < 10:
base = str(one)
else:
base = chr(ord('A') one-10)
num //= base1
base = base[::-1]
return base
def main():
"""Tests the function."""
print(decimalToRep(10, 10))
print(decimalToRep(10, 8))
print(decimalToRep(10, 2))
print(decimalToRep(10, 16))
if __name__ == "__main__":
main()
Однако упражнение выполняется в тестовой программе, и при тестировании я получаю эту ошибку
Traceback (most recent call last):
File "nt-test-1dee69b1", line 3, in <module>
assert(convert.decimalToRep(16, 16) == "10")
AttributeError: module 'convert' has no attribute 'decimalToRep'
Это содержимое теста:
assert(convert.decimalToRep(16, 16) == "10")
Я в растерянности, я не знаю, почему я получаю ошибку. Это была обычная проблема с этой тестовой программой. Даже если я получу результат, он не будет работать, если это не совсем так, как программа ожидает, что он будет написан. Спасибо.
Комментарии:
1. Нет, это моя ошибка. Когда я вставлял его сюда, я не заметил, что он так выглядел.
decimalToRep
Функция имеет отступ на том же уровне, что и основная. Это должно быть исправлено сейчас. Спасибо, что указали на это.2. Вы уверены , что ваш файл точно назван
convert.py
и что вы действительно сохранили свои изменения на диске?3. Я только что дважды проверил. Это исправило ситуацию. Обычно я запускаю несколько тестовых файлов с ненужными именами, чтобы поэкспериментировать с различными способами их написания, поэтому я об этом не подумал. Огромное спасибо.
4. Как выглядит файл тестовой функции?