2016-05-03 3 views
0

Мы переустановили один из наших серверов и установили более новую версию python. Так как это произошло, мы получаем эту ошибку:Python: TypeError: не все аргументы, преобразованные во время форматирования строки

Traceback (most recent call last):ogress: 0% 
    File "/var/www/scripts/apollo_file_management_v3_FC.py", line 368, in <module> 
    main() 
    File "/var/www/scripts/apollo_file_management_v3_FC.py", line 362, in main 
    delivered() 
    File "/var/www/scripts/apollo_file_management_v3_FC.py", line 223, in delivered 
    if cursor_2.execute("SELECT * FROM `table1` WHERE `wt` = ?",(d[0])): 
    File "build/bdist.linux-x86_64/egg/MySQLdb/cursors.py", line 187, in execute 
TypeError: not all arguments converted during string formatting 

Парня, который написал сценарий не работает здесь больше, а остальные из нас никогда не программировал в питоне.

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация, чтобы помочь.

+0

Проверьте это: http://stackoverflow.com/questions/18053500/typeerror-not-all-arguments-converted-during-string-formatting-python –

+0

@MarcCabos: что не помогает, когда это библиотеку, у которой есть эта проблема. –

+1

В частности, '(d [0])' не создает кортеж; '(..)' просто группирует выражение. Кортежи создаются с помощью * comma *, а в скобках '(...)' просто группируются запятые с правильным выражением, чтобы устранить их из запятых, используемых в вызове функции. '(d [0],)' будет работать, как и '[d [0]]' (для создания списка). –

ответ

Смежные вопросы