2011-06-14 53 views
4

任何人都可以解释我通过“打印”输出变量和当我只写变量名输出它之间的Python shell中的差异?在python shell中打印函数

>>> a = 5 
>>> a 
5 
>>> print a 
5 
>>> b = 'some text' 
>>> b 
'some text' 
>>> print b 
some text 

当我这样做与文本我理解差异,但在int或浮动 - 我不知道。

回答

10

刚进入一个表达式(如变量名)将实际输出由repr()函数返回,而print将结果转换成用str()功能的字符串的结果的表示。>>> S =“ ABC”

打印repr()会产生相同的结果直接输入表达式:

>>> "abc" 
'abc' 
>>> print repr("abc") 
'abc' 
2

Python的外壳总是返回最后计算的值。当a是5时,它评估为5,因此您可以看到它。当您致电print时,print输出值(不含引号)并不返回任何内容,因此print完成后不会产生任何结果。因此,在'some test'中评估b的结果并仅在some text中打印结果。