您的位置:首页 > 编程语言 > Python开发

Python 学习笔记03-python文件第一行为什么要写#!/usr/bin/local/bin/python(usr/bin/env python)

2019-03-11 17:50 239 查看

 

我们知道在python文件中#表示注释。如果放在第一行的话就有特殊的意义:因为操作系统使用它找到解释器来运行文件其他部分的程序代码。

在一些UNIX系统上,也许可以避免应变吗Python解释器的路径,而可以在文件特定的第一行注释中像这样写:

#!/usr/bin/env python

"""....script goes here...."""

这样编写代码的时候,env程序可以通过系统的搜索路径的设置(例如,在绝大多数的UNIX Shell中,通过搜索PATH环境变量中的罗列出的所有目录)定位Python解释器。这种方法可以使代码更具可以执性,因为没有必要在所有的代码中的第一行都应变吗Python的安装路径。

所以这样就可以得出以下两点结论:
1.windows下面点击Python文件可以直接运行的原因,这个命令行模式的是指类似于UNNIX #!。主题在windows上,有些程序实际上去解释并使用顶端的#!行,想UNIX那样。但是windows的DOS系统shell会完全忽略它。简而言之,就是windows点击运行会用到注释第一行,shell则会忽略它

2.这样也是python可以跨平台运行的原因之一。假设在任何地方都能够用env,无论python安装在系统的什么地方,你的脚本都能照样运行:跨平台工作时所需要做的仅仅是改变PATH环境变量,而不是脚本中的第一行。当然,这是env在任何系统中都有相同的路径的前提下(有些机器,还有可能在/sbin,/bin或者其他地方);如果不是的话,这种可移植性也就无从谈起了。

 

 

“欢迎大家相互关注,一起学习,一起交流。python确实是一把利器,帮助我们完成属于自己的‘宏图伟业’”

 

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: