2016-10-19 7 views
0

Почему я не получаю сообщение об ошибке при формировании сообщения с %s, но я делаю с format?сообщение об ошибке исключения python

Сбой:

>>> Exception('foo %s', 'bar').message 
'' 

Работы:

>>> Exception('foo {}'.format('bar')).message 
'foo bar' 

Любое объяснение, почему он терпит неудачу на %s?

+1

Ваш синтаксис не так, вам нужно использовать ''% для замены тоже. – Dartmouth

+1

Как насчет фактического использования '%' оператора для форматирования ... 'Исключение ('foo% s'% 'bar')' – JBernardo

+0

@dartmouth .. слишком очевидно, чтобы видеть это, argh. Спасибо, вот оно – ezdazuzena

ответ

3

Ваш синтаксис для% -подстановки в Exception неверен. Вы должны использовать %, чтобы указать строку замены:

>>> Exception('foo %s' % 'bar').message 
'foo bar' 
Смежные вопросы