Fork me on GitHub

关于python脚本头部设置#!/usr/bin/python

今天又是贼几把菜的一天0.0

读别人程序的时候看到在python文件头部设置签名,感觉贼几把酷,自己也试着在文件前段设置了一下。

设置还是蛮简单的,设置过程如图所示。

 

设置后如图所示:

 

当然你也可能看到有的人在文件头部添加如下语句,但是你并不知道什么意思,只是感觉很酷。

#!/usr/bin/python
#!/usr/bin/env python

首先需要说明:
这句代码在unix类的操作系统才有意义!
这句代码在unix类的操作系统才有意义!
这句代码在unix类的操作系统才有意义!

这句话的目的是告诉操作系统使用哪个Python解释器来执行这个py文件。

在linux上执行一下命令 /usr/bin/env python ,就知道这行其实是call一下python解释器.

这句话的一般有两种形式:

1. #!/usr/bin/python
#!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器。

2. #!/usr/bin/env python
#!/usr/bin/env python这种用法是为了防止操作系统用户没有将python装在默认的/usr/bin路径里。

当系统看到这一行的时候,首先会到env设置(环境变量)里查找python的安装路径,再调用对应路径下的解释器程序完成操作。

如何选择
一般情况下,使用第2种方法#!/usr/bin/env python更好。

因为#!/usr/bin/python限定了Python解释器必须在/usr/bin/python这个路径下,如果不在运行就出出错。

而#!/usr/bin/env python是从环境变量设置中查询Python解释器的路径,这种方法更加灵活。

 

我也是在VScode中跑python,因为带有#!/usr/bin/env python所以报错,然后发现0.0这是一句命令而不是简简单单的签名

菜还是我菜啊0.0

posted @ 2019-10-10 21:27  鲍鲍tql  阅读(1866)  评论(0编辑  收藏  举报