Python 2.7.1无法找到Twisted

1 投票
4 回答
3000 浏览
提问于 2025-04-16 11:03

我有一台新的MacBook Pro,运行的是OS X 10.6.6 / Snow Leopard,里面自带的是Python 2.6,不过我安装了2.7.1版本。

可惜的是,Python 2.7.1似乎无法找到在2.6版本的Extras/lib/python/twisted目录下安装的Twisted模块,我发现我无法导入那些我明明可以看到的模块。

我输入"which python"命令,返回的是"/Library/Frameworks/Python.framework/Versions/2.7/bin/python"。

运行python命令也返回相同的信息:"Python 2.7.1 (r271:86882M, Nov 30 2010, 10:35:34)"。

我已经把twisted目录的绝对路径添加到了sys.path中,并且也把它加到了.bash_profile文件里,现在这个文件的内容是这样的:

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
PATH=$PATH:/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/twisted
export PATH

有没有什么办法可以让2.7.1找到Twisted模块?还是说我在尝试一些根本做不到的事情?

谢谢。

4 个回答

2

使用virtualenv创建一个新的环境。

在你刚创建的环境中,使用pip安装Twisted。

3

你需要用 Python 2.7 来安装 twisted。

另外,Python 在导入模块时,不会查看 PATH 变量里的内容,而是会查看 PYTHONPATH。单纯把你的 Python 2.6 文件夹放到 PYTHONPATH 里并不是一个很好的解决办法。

3

你需要在你的 Python 2.7 环境中安装 Twisted。路径中的 "2.6" 提示你不要试图让 Python 2.7 知道它的存在。这里有几点需要注意:

  • 不同版本的 Python 之间,扩展模块是不能互相兼容的。如果你尝试使用它们,可能会导致程序崩溃。
  • 不同版本的 Python 之间,字节码格式也是不兼容的。Python 会退回去解析 '.py' 文件,这样会慢很多。
  • 如果你使用的操作系统自带 Python 2.6,那么里面的 Twisted 版本很可能和 Python 2.7 不兼容,因为在它发布的时候,Python 2.7 可能还没出来。

撰写回答