对于setup.py,如何将脚本的默认程序设置为当前的python解释器?

时间:2016-11-28 23:05:30

标签: python python-3.x setup.py

例如,假设setup.py脚本如下

from distutils.core import setup

setup(
    name='great_package_name',
    version='1.0',
    description='another great python package!',
    packages=['greatness'],
    scripts=['bin/some_script.py']
)

我希望bin / some_script.py使用默认程序

/home/itzjustricky/anaconda2/envs/py33/bin/python

用于调用setup.py的python解释器,即

my-cpu: python setup.py
my-cpu: which python
/home/itzjustricky/anaconda2/envs/py33/bin/python

有没有办法使setup.py自动放入

#!/home/itzjustricky/anaconda2/envs/py33/bin/python
bin / some_script.py文件顶部的

标题?如果setup.py也删除了.py文件扩展名也很棒。

我可能会破解使用sys.executable获取结果的方法,但是有更简洁的方法吗?我在Python3工作。感谢您提前提供任何帮助!

1 个答案:

答案 0 :(得分:0)

我只是简单地通过

来实现
#!/usr/bin/env python
在bin / some_script.py文件的头部

解决了我的问题。我不确定anaconda是否在幕后做某事。为了摆脱扩展,我只是决定从一开始就将some_script命名为bin / some_script,这已经足够了。