41

此代码来自http://docs.python.org/2/tutorial/errors.html#predefined-clean-up-actions

with open("myfile.txt") as f:
    for line in f:
        print line,

我不明白的是,打印命令末尾的那个是什么。

我还检查了文档http://docs.python.org/2/library/functions.html#print

理解不够,是不是搞错了?(好像不是,来自官方教程)。

我来自 ruby​​/javascript,这对我来说很不寻常。

4

4 回答 4

56

在python 2.7中,逗号是为了表示字符串将打印在同一行

例如:

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

一个 '\n' 字符写在末尾,除非 print 语句以逗号结尾。

于 2013-09-20T04:39:49.873 回答
15

它可以防止print以换行符结尾,允许您print在行尾追加新的。

Python 3 完全改变了这一点,不再接受尾随逗号。您使用end参数更改行尾,将其设置为空白字符串以获得相同的效果。

于 2013-09-20T04:39:36.593 回答
5

在 print 执行下一条指令后从Python 尾随逗号

  1. 在 Python 2.x 中,,打印语句中的尾随可防止发出新行。
  2. 标准输出是行缓冲的。因此在发出新行之前不会打印“Hi”。
于 2013-09-20T04:39:20.553 回答
0

在 python 2.7 中:

print line,

在 python 3.x 中:

print(line, end = ' ')
于 2018-10-09T18:21:45.370 回答