每个Py程序的最开始都有 # /usr/bin/python , 这个到底是什么, 有什么作用?
4个回答
展开全部
这是脚本语言共同遵守的规则:当第一行为 #!/path/to/script/interpreter时,指定了用来执行本脚本的解释器。
注意:
1、必须是文件的第一行
2、必须以#!开头,你丢了一个惊叹号
3、/path/to/script/interpreter是脚本解释器的全路径名。
例如:
#!/bin/sh shell脚本
#!/usr/bin/perl perl脚本
#!/usr/bin/python python脚本
#!/usr/bin/python3 python3脚本
#!/usr/bin/python2 python2脚本
而有时不太清楚脚本解释器的具体全路径名;或者开发环境与运行环境的安装路径不同。为了保证兼容性,也可以写作:
#!/usr/bin/env python3
这样运行时会自动搜索脚本解释器的绝对路径。
注意:
1、必须是文件的第一行
2、必须以#!开头,你丢了一个惊叹号
3、/path/to/script/interpreter是脚本解释器的全路径名。
例如:
#!/bin/sh shell脚本
#!/usr/bin/perl perl脚本
#!/usr/bin/python python脚本
#!/usr/bin/python3 python3脚本
#!/usr/bin/python2 python2脚本
而有时不太清楚脚本解释器的具体全路径名;或者开发环境与运行环境的安装路径不同。为了保证兼容性,也可以写作:
#!/usr/bin/env python3
这样运行时会自动搜索脚本解释器的绝对路径。
追问
非常专业的回答, 还细心的指出了一个小错误.
想请问 usr bin 这两个分别代表什么意思呢?
追答
看来你对unix/linux不太熟悉。
/usr/bin是一个系统目录,里面存储一些系统命令,可执行程序。
类似windows操作系统的C:\Windows\System32目录。
展开全部
linux的shell是通过读取程序的第一行来判断被执行文件的类型。如果是#!开头,说明是脚本,其中
/usr/bin/python说明执行此脚本需要的解释程序。
windows下往往是通过文件后缀做类型关联。然后确定用哪个程序去执行,或者怎么做open的。
/usr/bin/python说明执行此脚本需要的解释程序。
windows下往往是通过文件后缀做类型关联。然后确定用哪个程序去执行,或者怎么做open的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
表示这个Py程序可以直接启动(即./test.py这样运行,前提是要chmod给它加上可执行权限),执行它的程序是/usr/bin/python这个程序。
如果没有这个,就只能python test.py这样运行。
如果没有这个,就只能python test.py这样运行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-24 · 知道合伙人互联网行家
关注
展开全部
是不是。。。
#!/usr/bin/python
啊?其实最好写成
#!/usr/bin/env python
作用就是全力哈士奇说的那样,这行字还有个名儿:shabang, 你搜搜看,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询