打印function的结尾是什么?
此代码来自http://docs.python.org/2/tutorial/errors.html#predefined-clean-up-actions
with open("myfile.txt") as f: for line in f: print line,
我不明白的是,
在打印命令的最后。
我也检查了doc, http://docs.python.org/2/library/functions.html#print 。
没有足够的理解,这是一个错误吗?(似乎不是,这是从官方教程)。
我来自ruby / JavaScript,这对我来说是不寻常的。
在Python 2.7中,逗号就是显示string将被打印在同一行上
例如:
for i in xrange(10): print i,
这将打印
1 2 3 4 5 6 7 8 9
要在python 3中做到这一点,你会这样做:
for i in xrange(10): print(i,end=" ")
你可能会发现这个答案有帮助
在Python中水平打印
—-编辑—
文档http://docs.python.org/2/reference/simple_stmts.html#the-print-statement表示;
A '\n' character is written at the end, unless the print statement ends with a comma.
它可以防止print
以换行符结束,允许您在行尾添加新的print
。
Python 3完全改变了这一点,尾随的逗号不再被接受。 您可以使用end
参数来更改行尾,将其设置为空string以获得相同的效果。
从Python后面的逗号打印后执行下一条指令 :
- 在Python 2.x中,打印语句中的尾部会阻止发送新行。
- 标准输出是行缓冲的。 所以在发出新的一行之前,“Hi”不会被打印出来。