最佳答案
当 Python 脚本应该从 pyenv
virtualenv
运行时,文件的正确 开始吧是什么?
作为一个示例测试用例,我的系统(OS X)上的默认 Python 没有安装 pandas
。Pyenv virtualenv venv_name
可以。我尝试从 viralenv 获取 Python 可执行文件的路径。
pyenv activate venv_name
which python
Output:
/Users/username/.pyenv/shims/python
So I made my example script.py
:
#!/Users/username/.pyenv/shims/python
import pandas as pd
print 'success'
但是当我尝试运行这个脚本(从‘ venv _ name’中)时,我得到了一个错误:
./script.py
Output:
./script.py: line 2: import: command not found
./script.py: line 3: print: command not found
尽管直接在命令行上运行该路径(从‘ venv _ name’内部)可以很好地工作:
/Users/username/.pyenv/shims/python script.py
产出:
success
还有:
python script.py # Also works
产出:
success
什么是正确的方法?理想情况下,我想要一些通用的东西,这样它就会指向 Python,不管我当前的 venv 是什么。