【问题标题】:How to use path of current conda environment's python as shebang for a script?如何使用当前 conda 环境的 python 路径作为脚本的 shebang?
【发布时间】:2019-02-04 20:14:35
【问题描述】:

假设您有 2 个 conda 环境:py3_envpy3_clone_env

如果您有一个具有以下结构的script.py

#![shebang]
import sys
def main():
    print("hello world", file=sys.stdout)
if __name__ == "__main__":
    main()

是否可以让 shebang 成为由当前 conda 环境确定的变量?

例如:

来自py3_env环境:

#!~/anaconda/envs/py3_env/bin/python

来自py3_clone_env 环境:

#!~/anaconda/envs/py3_clone_env/bin/python

【问题讨论】:

    标签: python environment-variables conda environment shebang


    【解决方案1】:

    我猜你需要的是#!/usr/bin/env python:

    #!/usr/bin/env python
    import sys
    print(sys.executable)
    

    在这种情况下,python 是基于当前PATH 环境变量的python。所以它是你当前 virtualenv 的 python。

    【讨论】:

    • 哇!我一直想知道为什么人们总是添加它。非常感谢。
    猜你喜欢
    • 2013-10-06
    • 2022-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-07
    • 2017-09-23
    相关资源
    最近更新 更多