【问题标题】:Meaning of >> in print statement打印语句中>>的含义
【发布时间】:2010-12-25 23:36:08
【问题描述】:

我想知道print >> dbfile, key 在 python 中是什么意思。 >> 应该做什么?

【问题讨论】:

  • 顺便说一句,这被认为是 Python 语法中比较棘手的部分之一。如果您希望 print 像其他所有函数一样工作,可以将 from __future__ import print_function 放在代码顶部以使用最新行为。
  • __future__ 声明适用于 2.6.0a2 及更高版本,请注意。 docs.python.org/library/__future__.html

标签: python syntax python-2.x


【解决方案1】:

应该注意>> 语法是特定于 Python 2.x 的。在 Python 3.x 中,该语法消失了,代码需要更改如下:

print >>f, "Hello world"           # Python 2.x

print("Hello world", file=f)       # Python 3.x

【讨论】:

  • 我觉得我更喜欢 python 3 的语法,因为它看起来更干净
  • 如果您在 Python 2.7 中使用from __future__ import print_function,后一种语法似乎也可以工作。 __future__'s documentation 表示它适用于 2.6.0a2 及更高版本。
【解决方案2】:

这会将print 重定向到一个文件(在本例中为dbfile)。

>> 只是用于此目的的一种特殊语法。

【讨论】:

    【解决方案3】:

    请参阅 Python 语言参考中的 “The print statement”。指示的对象必须具有write 方法。

    【讨论】:

      猜你喜欢
      • 2013-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-09
      • 2023-01-13
      相关资源
      最近更新 更多