Python 什么';打印函数中的结尾逗号是什么?

Python 什么';打印函数中的结尾逗号是什么?,python,Python,此代码来自 我不明白的是打印命令末尾的,是什么意思 我也查过了 理解不够,这是一个错误吗?(似乎不是。它来自官方教程) 我来自ruby/javascript,这对我来说很不寻常。来自: 在Python2.x中,print语句中的尾随,阻止发出新行 标准输出是行缓冲的。因此,在发出新行之前,不会打印“Hi” 它可以防止打印以换行结束,从而允许您在行尾追加新的打印 Python3完全改变了这一点,并且不再接受尾随逗号。您可以使用end参数更改行尾,将其设置为空白字符串以获得相同的效果。在python

此代码来自

我不明白的是打印命令末尾的
是什么意思

我也查过了

理解不够,这是一个错误吗?(似乎不是。它来自官方教程)

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

来自:

  • 在Python2.x中,print语句中的尾随
    阻止发出新行
  • 标准输出是行缓冲的。因此,在发出新行之前,不会打印“Hi”

  • 它可以防止
    打印
    以换行结束,从而允许您在行尾追加新的
    打印


    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 = ' ')