加入换行符

在Python控制台中,当我键入:

>>> "n".join(['I', 'would', 'expect', 'multiple', 'lines'])

得到:

'Inwouldnexpectnmultiplenlines'

虽然我期望看到这样的输出:

I
would
expect
multiple
lines

我在这里错过了什么?


控制台打印表示,而不是字符串本身。

如果你print前缀,你会得到你所期望的。

有关字符串与字符串表示之间的区别的详细信息,请参阅此问题。 超级简化的表示形式就是您在源代码中输入以获取该字符串的内容。


你忘了print结果。 你得到的是RE(P)LP ,而不是实际的打印结果。

在Py2.x中,你应该如此

>>> print "n".join(['I', 'would', 'expect', 'multiple', 'lines'])
I
would
expect
multiple
lines

在Py3.X中,print是一个函数,所以你应该这样做

print("n".join(['I', 'would', 'expect', 'multiple', 'lines']))

现在,这是简短的答案。 你的Python解释器,实际上是一个REPL,总是显示字符串的表示而不是实际显示的输出。 您可以通过repr声明获得代表性

>>> print repr("n".join(['I', 'would', 'expect', 'multiple', 'lines']))
'Inwouldnexpectnmultiplenlines'

您需要print才能获得该输出。
你应该做

>>> x = "n".join(['I', 'would', 'expect', 'multiple', 'lines'])
>>> x                   # this is the value, returned by the join() function
'Inwouldnexpectnmultiplenlines'
>>> print x    # this prints your string (the type of output you want)
I
would
expect
multiple
lines
链接地址: http://www.djcxy.com/p/31797.html

上一篇: Join with newline

下一篇: Converting a list to a string