我曾经使用过shebang
#!/usr/bin/env python
何时使用
更好#!/usr/bin/python
它们之间的确切区别是什么?
答案 0 :(得分:68)
#!/usr/bin/python
被硬编码为始终运行/usr/bin/python
,而#!/usr/bin/env python
将运行当前环境中默认为python
的任何内容(例如{{}} 1}},你可以检查哪个python解释器将与$PATH
一起使用。
第二种方式(which python
)是首选,因为它不依赖于特定的安装。例如,它适用于没有#!/usr/bin/env python
的{{1}}设置或系统,但仅限于virtualenv
。