Уведомления

Группа в Telegram: @pythonsu

#1 Июль 12, 2009 23:44:54

ks
От:
Зарегистрирован: 2009-05-20
Сообщения: 61
Репутация: +  0  -
Профиль   Отправить e-mail  

Python 2.6.2; ValueError: incomplete format

Код:

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) - все работает…

/Спасибо



Офлайн

#2 Июль 13, 2009 02:39:56

pyuser
От:
Зарегистрирован: 2007-05-13
Сообщения: 658
Репутация: +  36  -
Профиль   Отправить e-mail  

Python 2.6.2; ValueError: incomplete format

Можно было почитать справку о печати спецсимволов :)
Вместо “ it(%d)” напишите “ it(%%d)” и все получится



Офлайн

#3 Июль 13, 2009 13:30:53

ks
От:
Зарегистрирован: 2009-05-20
Сообщения: 61
Репутация: +  0  -
Профиль   Отправить e-mail  

Python 2.6.2; ValueError: incomplete format

Разобрался:
вместо if op in “ it(%d)” нужно было написать if op is “ it(%d)” - нам нужно только одно исключение, а он пытается тянуть предыдущий символ ‘%’ в нашем списке.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version