Вот мой код:
Код: Выделить всё
condition = 'hi'
print(eval("2 + 4 * len(%s)" % (condition)))
Код: Выделить всё
Traceback (most recent call last):
File "C:\test.py", line 3, in
print(eval("4 + 3 * len(%s)" % (condition)))
File "", line 1, in
NameError: name 'hi' is not defined
Однако, когда я определяю hi, как если бы это была переменная, код внезапно компилируется и бежит:
Код: Выделить всё
condition = 'hi'
hi = 'hi'
print(eval("2 + 4 * len(%s)" % (condition)))
Код: Выделить всё
10
Подробнее здесь: https://stackoverflow.com/questions/555 ... -statement
Мобильная версия