Mis*_*iev 8 python coding-style shebang
Python库模块应该以#!/usr/bin/envpython 开头吗?
查看*.pyin的第一行/usr/share/pyshared(其中Python库存储在Debian中)显示存在以hashbang行开头的文件和不使用hashbang行的文件.
是否有理由包含或省略此行?
之前有些文件/usr/share/pyshared已经声明了shebang而有些文件并不容易解释.拿文件uno.py和pyinotify.py.前者没有shebang而后者没有.
uno.py是一个python模块,将导入并在其他程序/脚本中使用.因此,它永远不会直接从命令行执行.另一方面pyinotify.py包含shebang,你可以看到它底部包含以下行(如果你运行它就可以成为可执行文件chmod u+x):
if __name__ == '__main__':
command_line()
Run Code Online (Sandbox Code Playgroud)你可以在shebang中对python二进制文件进行硬编码,但正如其他人所提到的,使用/usr/bin/env它会使它更具可移植性.
| 归档时间: |
|
| 查看次数: |
850 次 |
| 最近记录: |