Форум сайта python.su
Всем привет, только начал изучать программирование, сейчас по книге "думать на языке Python“. В 7 главе столкнулся с проблемой и был бы признателен, если кто-нибудь объяснит как исправить ошибку.
По заданию, создаю простую функцию:
Def eval_loop() : while True: line = input('>') If line == 'done': dreak Print(eval(line)) return print('done')
While True: Line = input('>') If line == 'done' : Break Print(line) Print('done')
Отредактировано Flexizz (Авг. 26, 2019 12:24:52)
Офлайн
1) укажите ваш код корректно в тегах code
2) всегда указывайте полный текст ошибки
Офлайн
Flexizzну сталобыть в этом пространстве имен нет такого имени
NameError: name ‘done’ is not defined
def eval_loop() : while True: line = input('>') if line == 'done': break print(eval(line)) return #зачем это здесь? после return вы выходите из функции те код ниже #ни когда не исполнится если конечно ето не ваша ошибка с отступами print('done')
Отредактировано AD0DE412 (Авг. 28, 2019 11:07:11)
Офлайн
Flexizz странно что у вас с вашим регистром код вообще запустился до ошибки которой кстати нет если вы правильно записали ‘done’ как строку а не как переменную done
while True: line = input('>') if line == 'done' : break print(line) print('done')
Офлайн
# codind: utf-8 def eval_loop(): while True: line = input('--> ') if line == 'done': break else: try: var = eval(line) print(var) except Exception as err: print("err:", err) continue return "end" print(eval_loop())
--> 1 + 45 46 --> sum([1, 2, 3]) 6 --> "".join(["1", "2"]) 12 --> print("err") "err" --> ghgh err: name 'ghgh' is not defined --> done end
Отредактировано AD0DE412 (Авг. 28, 2019 12:10:00)
Офлайн