【问题标题】:Python - Code does not run without #!/usr/bin/python [duplicate]Python - 如果没有 #!/usr/bin/python,代码将无法运行 [重复]
【发布时间】:2016-05-20 10:55:05
【问题描述】:

好的,我是 Python 新手,但是如果出现以下行,我的代码不会运行

#!/usr/bin/python

不在文件开头。这是为什么 ?这是什么意思 ?如果安装了多个版本,我认为它用于表示一个 python 版本。

#!/usr/bin/python
def main():
    a = [1,2,3]

    print a

if __name__ == "__main__":
  main()

省略 #!/usr/bin/python 会产生以下错误仅当我使用

执行它

./test.py 在 Ubuntu 上

但是,如果我使用 python 命令运行,那么它在没有 /usr/bin 行的情况下运行良好。

【问题讨论】:

  • 您可以在任何 *nix 环境中运行您的文件,如“python test.py”。第一行实际上告诉 shell 如何执行脚本的其余部分。

标签: python shell


【解决方案1】:

#! 开头的脚本的第一行是shebang(有时称为hash-bang)。

以下可执行路径表示应使用哪个解释器来处理以下代码(在您的情况下为/usr/bin/python)。

如果您使用 python test.py 从 shell 运行脚本,则不需要 shebang - 可执行文件是 python,并且脚本作为参数传递给它。

【讨论】:

    【解决方案2】:

    在 Unix 中,如果文件包含脚本语言(在您的情况下为 Python),您可以告诉文件应如何打开。

    这条线被称为Shebang

    【讨论】:

      【解决方案3】:

      ./filename 用于运行可执行文件,要执行它需要指定所需的应用程序。 而在使用 python filename.py 时,您已经指定了要使用的应用程序,在这种情况下是 python。

      【讨论】:

        猜你喜欢
        • 2021-06-08
        • 2018-01-15
        • 1970-01-01
        • 1970-01-01
        • 2011-03-19
        • 2016-09-28
        • 2020-05-26
        • 2022-12-25
        • 1970-01-01
        相关资源
        最近更新 更多