关于字符串:在Python中的

working of
in python

本问题已经有最佳答案,请猛点这里访问。

我目前正在上Python课程。在谈到转义序列时,他们提到了"
"
用于在新行中打印字符串。但当它以以下方式使用时,为什么我得到不同的输出

1
2
3
4
5
>>> st ="Hello
World"

>>> st
'Hello
World'

但是如果我这样做

1
2
3
>>> print st
Hello
World


提供对象字符串表示的函数有两个:repr()str()。前者用于将对象转换为代码字符串,而后者提供用户友好的字符串。

在命令行中输入变量名时,使用repr()
字符显示为
(代码)。使用print时,使用str()
显示为新行(用户友好)。

顺便说一下,str是一个变量的坏名字,因为它与内置的相同。


当你这样做的时候

1
st

有点像

1
2
"
"

您希望字符串
返回,而不是换行。

在这两种情况下,都不调用print函数,它实际上可以处理
的真正含义。这就是为什么print 'Hello
World'
的输出与

1
2
>>> 'Hello
World'