В Python, почему входная переменная не позволяет циклу выполняться, но превращение ее в функцию позволяет запускать как ⇐ Python

Программы на Python
Anonymous
В Python, почему входная переменная не позволяет циклу выполняться, но превращение ее в функцию позволяет запускать как

Сообщение Anonymous »

Я не совсем уверен, как сформулировать заголовок.

Код: Выделить всё

operation = ("Addition", "Subtraction", "Multiplication", "Division")

def choose():
input("Choose an operation: ").casefold().strip()

def operations():
for op in operation:
index = operation.index(op) + 1
print(index, ".", op)

operations()
choose()
когда я запускаю это, на выходе получается список имен, а под ним — вопрос. Но если я превращу приглашение ввода в переменную, запускается только вопрос, а список практически игнорируется.

Код: Выделить всё

operation = ("Addition", "Subtraction", "Multiplication", "Division")
choose = input("Choose an operation: ").casefold().strip()

def operations():
for op in operation:
index = operation.index(op) + 1
print(index, ".", op)

operations()
choose
В чем причина?
если я поставлю

Код: Выделить всё

operations()
input("Choose an operation: ").casefold().strip()
тогда это также запускает и список, и вопрос. Но мне нужно возвращаемое значение для дальнейшего использования, поэтому это бесполезно.
Я не понимаю, почему функция работает, а переменная блокирует цикл?

Подробнее здесь: https://stackoverflow.com/questions/790 ... g-it-a-fun

Вернуться в «Python»