Python console_script入口点以Python2运行

时间:2017-08-18 17:25:08

标签: python linux

我有一个设置入口点console_script的包,我希望console_script以Python3的形式运行python函数/脚本

我的包使用urllib.request模块(Python3)。

运行命令(console_script)会出现关于request不是模块的python错误,这就是为什么我认为它以Python2的形式执行我的脚本..

__主__。PY

import urllib.request
...

...
urllib.request.urlretrieve(url, file_path, progress)
...

错误

ImportError: No module named request
python --version
Python 2.7.13

python3 --version
Python 3.5.4rc1

2 个答案:

答案 0 :(得分:1)

console_script脚本使用用于安装其软件包的任何版本的Python来执行,例如,如果您使用pippip2python2 -m pip安装了软件包,或者之类的,脚本将始终在Python 2下运行。要么卸载软件包并使用Python 3重新安装它,要么使用类似six的内容来确保您的脚本在两个版本下都能正常工作。

答案 1 :(得分:0)

通过从所有点子(pippip2pip3卸载我的包来解决此问题 然后使用sudo pip3重新安装我的包(注意sudo部分..)