【问题标题】:Is '#!/usr/bin/python' in front of every Python script a must? [duplicate]'#!/usr/bin/python' 在每个 Python 脚本前面是必须的吗? [复制]
【发布时间】:2012-04-11 15:47:28
【问题描述】:

可能重复:
Why do people write #!/usr/bin/env python on the first line of a Python script?
What does the line “#!/bin/sh” mean in a UNIX shell script?

这是一个注释,解释器应该忽略它。为什么 #!/usr/bin/python 仍然在几乎每个程序中?

【问题讨论】:

  • 这不仅仅是评论,而是shebang
  • 是的,这绝对是复制品

标签: python


【解决方案1】:

如果脚本是可执行的,操作系统将使用第一行来了解哪个解释器运行来解析文件的其余部分以执行一些操作。

如果您总是从命令行运行这些类型的脚本,例如python foo.py,那么您可以删除第一行。

【讨论】:

  • 这仅适用于类 Unix 操作系统。例如,Windows 不会这样做。它通常使用.py 后缀来确定如何执行脚本。
【解决方案2】:

实际上不是。在类 Unix 操作系统中,传统的做法是使用第一行中给出的解释器路径,并使用该解释器的路径来解释程序的其余部分。它被称为Shebang line。如果您不在类 Unix 系统(linux.Mac OS、FreeBSD 等)上,您不会关心它,但 Python 社区中有 attempts 也可以在 Windows 上使用类似的 shebang 行。

【讨论】:

    【解决方案3】:

    阅读维基百科文章Shebang。还要记住在 *nix 世界之外,第一个 shebang 前缀行被视为注释。

    【讨论】:

      猜你喜欢
      • 2010-11-13
      • 2018-01-15
      • 1970-01-01
      • 2017-07-31
      • 2012-02-21
      • 2011-03-12
      • 2014-08-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多