问题描述
在python脚本经常能看到 #!/usr/bin/python2或者是#!/usr/bin/env python2,这行的作用是什么,这两种表达方式哪种会比较好.
SheBang
如果你直接想运行下面的文件如test.py
你可以使用下面的方式
python2 test.py
当然你也可以在代码中加入shebang,shebang的意思就是指定哪个编译器来编译脚本.
下面这两种方式都可以让编译器找到python2,
第一种方式是直接绝对路径指定python2,这样的方式带来的后果是不可移植,如果你将程序转移到python的安装路径不是/usr/bin/python2的话程序就会报错.
第二中方式是在PATH环境变量中找python2编译器,第二种方式会更灵活,而我的电脑中PATH环境变量是有/usr/bin这个路径的,所以可以找到python2
/usr/bin/env是什么?
/usr/bin/env就是告诉系统,可以在PATH下面找后面所指定的编译器