в чем разница между функциями str() и repr() в python 2.7.5?
Объяснение на python.org:
Функция
str()предназначена для возврата представлений значений, которые довольно доступны для человека, тогда какrepr()предназначен для генерации представления, которые могут быть считаны интерпретатором (или будут вынужденыSyntaxError, если нет эквивалентного синтаксиса)
Но мне это было непонятно.
несколько примеров:
>>> s = 'Hello, world.'
>>> str(s)
'Hello, world.'
>>> repr(s)
"'Hello, world.'" # repr is giving an extra double quotes
>>> str(1.0/7.0)
'0.142857142857'
>>> repr(1.0/7.0)
'0.14285714285714285' # repr is giving value with more precision
поэтому я хочу знать следующее
- Когда следует использовать
str()и когда следует использоватьrepr()? - В каких случаях я могу использовать любой из них?
- Что может
str()делать, чтоrepr()не может? - Что может
repr()делать, чтоstr()не может?