Python 什么';打印函数中的结尾逗号是什么?
此代码来自 我不明白的是打印命令末尾的Python 什么';打印函数中的结尾逗号是什么?,python,Python,此代码来自 我不明白的是打印命令末尾的,是什么意思 我也查过了 理解不够,这是一个错误吗?(似乎不是。它来自官方教程) 我来自ruby/javascript,这对我来说很不寻常。来自: 在Python2.x中,print语句中的尾随,阻止发出新行 标准输出是行缓冲的。因此,在发出新行之前,不会打印“Hi” 它可以防止打印以换行结束,从而允许您在行尾追加新的打印 Python3完全改变了这一点,并且不再接受尾随逗号。您可以使用end参数更改行尾,将其设置为空白字符串以获得相同的效果。在python
,
是什么意思
我也查过了
理解不够,这是一个错误吗?(似乎不是。它来自官方教程)
我来自ruby/javascript,这对我来说很不寻常。来自:
,
阻止发出新行它可以防止
打印
以换行结束,从而允许您在行尾追加新的打印
Python3完全改变了这一点,并且不再接受尾随逗号。您可以使用
end
参数更改行尾,将其设置为空白字符串以获得相同的效果。在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=" ")
你可能会发现这个答案很有帮助
----编辑---
文件上说
除非print语句以逗号结尾,否则结尾将写入“\n”字符
在python 2.7中:
print line,
在python 3.x中:
print(line, end = ' ')
这似乎是明智之举,更像是必然结果。当
print
是一个普通函数而不是一个语句时,您不能只向它添加随机语法。这在Python3中更有意义。原来的语法真是一个奇怪的例外,很容易让人困惑。@JIXiang我想这是一个从旧语言复制来的功能,我模糊地记得看到一个基本的是这样工作的。我同意Python3方式更好。导入sys.stdout.flush()来解决行缓冲问题或Python-u script.py
Hello,欢迎访问该站点!你能详细说明一下这个答案吗?这显示了如何在Python2和Python3中获得相同的结果,但没有解释该结果是什么。在Python3代码段中,xrange
应替换为range
print(line, end = ' ')