Nic*_*ach 6 python virtualenv python-3.x pyinvoke
这个问题与此类似,但并不完全相同。
我安装了python2.7和python3.5。我可以从命令行使用脚本之一运行脚本。我当前的默认“ python”是python2。
我有一个需要运行pyinvoke的python3脚本,该脚本通常是使用invoke <task>命令行中的命令运行的。即使当我设置使用python3的虚拟环境时,invoke仍然使用python2。
我认为关于虚拟环境我缺少什么?
我目前唯一的解决方法是仅为python3安装pyinvoke。然后它将在python3下运行。
有人知道如何设置它以与虚拟环境一起使用吗?
我猜你已经在所有 virtualenv 之外全局安装了invoke 。
如果是这样,修复方法是:
#!/usr/bin/bash
# Remove global invoke, at a fresh terminal or after deactivate
$ pip uninstall invoke
Run Code Online (Sandbox Code Playgroud)
要测试它,请添加到 Invoke 的tasks.py文件中:
import sys
print(sys.version_info)
Run Code Online (Sandbox Code Playgroud)
然后在终端检查我们得到 Python 3.x:
#!/usr/bin/bash
$ mkvirtualenv myproject_py3 --python=$(which python3)
(myproject_py3)$ pip install invoke
(myproject_py3)$ invoke --list
sys.version_info(major=3, minor=5, micro=0, releaselevel='final', serial=0)
No tasks found in collection 'tasks'!
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
509 次 |
| 最近记录: |