Форум сайта python.su
Код:
a, b = 2, 3
for op in :
if op in “ it(%d)”:
e = “a +” + op % b
print e, “->”, eval(e)
else:
e = “a ” + op + “ b”
print e, “->”, eval(e)
/Код
Ошибка:
Traceback (most recent call last):
File “<pyshell#146>”, line 3, in <module>
e = “a +” + op % b
/Ошибка
Внимание, вопрос :-)
Прошу помочь с этим - вводишь поочередно >>>e = “a +” + “ it(%d)” % b и >>>eval(e) - все работает…
/Спасибо
Офлайн
Можно было почитать справку о печати спецсимволов :)
Вместо “ it(%d)” напишите “ it(%%d)” и все получится
Офлайн
Разобрался:
вместо if op in “ it(%d)” нужно было написать if op is “ it(%d)” - нам нужно только одно исключение, а он пытается тянуть предыдущий символ ‘%’ в нашем списке.
Офлайн