好的我是Python的新手,但如果行
我的代码不会运行#!/usr/bin/python
不存在于文件的开头。这是为什么 ?这是什么意思 ?如果安装了多个版本,我认为它用于表示python版本。
#!/usr/bin/python
def main():
a = [1,2,3]
print a
if __name__ == "__main__":
main()
省略#!/ usr / bin / python会出现以下错误仅当我使用
执行它时 Ubuntu上的 ./test.py
但是,如果我使用python命令运行,那么它在没有/usr/bin
行的情况下运行良好。
答案 0 :(得分:5)
以#!
开头的脚本的第一行是shebang(有时称为哈希爆炸)。
以下可执行路径表示应使用哪个解释器来处理以下代码(在您的情况下为/usr/bin/python
)。
如果您使用python test.py
从shell运行脚本,则不需要shebang - 可执行文件为python
,并将脚本作为参数传递给它。
答案 1 :(得分:1)
在Unix中,如果文件包含脚本语言(在您的情况下是Python),您可以告诉文件应该如何打开它。
此行称为Shebang。
答案 2 :(得分:0)
./filename
用于运行可执行文件,要执行它,您需要指定所需的应用程序。
然而,在使用python filename.py
时,您已经指定了要使用的应用程序,在这种情况下是python。