为什么人们在 Python 脚本的第一行写 #!/usr/bin/env python?

新手上路,请多包涵

我在 Python 文件的顶部看到了这些:

 #!/usr/bin/env python

 #!/usr/bin/env python3

在我看来,没有该行,文件运行相同。

原文由 john garcias 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 262
1 个回答

如果您安装了多个版本的 Python, /usr/bin/env 将确保使用的解释器是您环境中的第一个 $PATH 。另一种方法是对类似 #!/usr/bin/python 的东西进行硬编码;没关系,但不太灵活。

在 Unix 中,要解释的 可执行 文件可以通过在第一行的开头 #! 来指示要使用的解释器,然后是解释器(以及它可能需要的任何标志)。

如果你在谈论其他平台,当然,这条规则不适用(但“shebang line”没有害处,如果你将该脚本复制到 具有 Unix 基础的平台,如 Linux,Mac,将会有所帮助, ETC)。

原文由 Alex Martelli 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题