virtualenv 获取错误的 Python?

0 投票
1 回答
2305 浏览
提问于 2025-04-18 08:06

我在使用Grinberg的Flask教程中的文件时,发现它们在我本地运行不了,除非我在每个文件的第一行加上#!/usr/bin/env python。我本以为我在xubuntu上用apt-get安装的virtualenv默认应该是python 2.7呢?

有没有办法让我在使用virtualenv时,确保用的是正确的python版本,这样我就不需要在每个从git上下载的文件里都加上这个标记了?

而且,我还得在这些文件上执行chmod 755,才能在我的本地virtualenv中正常使用。

我是不是在某种程度上造成了这些问题?有没有办法避免每次都要修改这些文件呢?

1 个回答

0

当你使用 env 的时候,这基本上意味着你系统中 PATH 里第一个找到的 python 实例会被使用。

你执行 which python 时,输出的是什么?那 virtualenv 实际上使用的是哪个版本呢?

可能你在没有做任何更改的情况下,使用的是系统自带的 python,而不是 virtualenv

你到底是怎么运行这些脚本的呢?

如果你是直接从你想用的 virtualenv 环境里的 bin/python 运行它们,那么它应该会使用那个 python

否则,如果你只是想用 python 而不指定路径,最好是先在你想用的 virtualenv 中运行 source 命令来激活 activate 脚本。

撰写回答