[英]Using setuptools in your package's setup.py — How do you conditionally install a script?
[英]For setup.py, how do you set a script's default program as the current python interpreter?
例如,假设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。 预先感谢您的帮助!
我只是意识到
#!/usr/bin/env python
在bin / some_script.py文件的开头解决了我的问题。 我不确定anaconda是否在幕后做某事。 为了摆脱扩展名,我刚刚决定从一开始就将some_script命名为bin / some_script,这已经足够了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.