【问题标题】:How to run a python program in a shell without typing "python"如何在不输入“python”的情况下在 shell 中运行 python 程序
【发布时间】:2014-05-03 14:39:04
【问题描述】:

我是 python 新手。我写了一个可以通过输入python Filecount.py ${argument} 来执行的程序为什么我看到我的老师可以通过输入Filecount.py ${argument} 来运行一个程序。如何实现?

【问题讨论】:

标签: python


【解决方案1】:

使其可执行

chmod +x Filecount.py

并在Filecount.py 的顶部添加一个hashbang,您希望使用python interpreter 执行该文件。

#!/usr/bin/env python

然后像这样运行

./Filecount.py args

【讨论】:

  • /usr/bin/env 优于 /bin/python。我的系统上甚至没有合适的/bin 目录(这将通过符号链接解决)。此外,在某些基于 Arch 的发行版上,这将解析为 Python 3,而不是 Python 2,而我相信 /usr/bin/env 样式会按预期解析。
【解决方案2】:

在基于 linux 的操作系统中,您必须包含一行(在脚本的开头,即第一行),如下所示:

#!/usr/bin/python

这告诉操作系统在那个位置寻找你的 python 解释器。这适用于任何脚本。

请记住在您的脚本文件(即可执行文件)中拥有权限才能使其正常工作。

【讨论】:

  • 正如我在 Andre 的回答中所指出的,首选的 shebang 行是 /usr/bin/env python 或等效的,而不是指定您认为 Python 存在于系统上的路径。
【解决方案3】:

在文件顶部添加 shebang 行:http://en.wikipedia.org/wiki/Shebang_(Unix)#Purpose

它将告诉系统在运行您的程序时使用哪个可执行文件。

例如,添加

#!/usr/bin/env python

作为第一行,然后更改文件的权限以便执行。

chmod +x Filecount.py

祝你好运!

【讨论】:

    猜你喜欢
    • 2016-08-14
    • 2011-06-26
    • 2012-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-22
    相关资源
    最近更新 更多