【发布时间】:2017-07-10 17:35:55
【问题描述】:
谁能解释一下python shell中通过“打印”输出变量和我只写变量名来输出它时的区别?
>>> a = 5
>>> a
5
>>> print a
5
>>> b = 'some text'
>>> b
'some text'
>>> print b
some text
当我使用文本执行此操作时,我理解差异,但在 int 或 float 中 - 我不知道。
【问题讨论】:
标签: python
谁能解释一下python shell中通过“打印”输出变量和我只写变量名来输出它时的区别?
>>> a = 5
>>> a
5
>>> print a
5
>>> b = 'some text'
>>> b
'some text'
>>> print b
some text
当我使用文本执行此操作时,我理解差异,但在 int 或 float 中 - 我不知道。
【问题讨论】:
标签: python
只需输入一个表达式(例如变量名),实际上将输出由repr() 函数返回的结果表示,而print 将使用str() 函数将结果转换为字符串。> >> s = "abc"
打印repr()会得到与直接输入表达式相同的结果:
>>> "abc"
'abc'
>>> print repr("abc")
'abc'
【讨论】:
Python 的 shell 总是返回最后评估的值。当a 为 5 时,它的计算结果为 5,因此您可以看到它。当您调用print 时,print 输出值(不带引号)并且不返回任何内容,因此在完成print 之后不会产生任何内容。因此,评估b 会得到'some test',打印它只会得到some text。
【讨论】: