ImportError:没有名为Foundation的模块

时间:2009-10-23 16:46:09

标签: python xcode osx-snow-leopard pyobjc

我正在尝试按照“使用Xcode 3.2进行PyObjC开发”的已接受答案的说明进行操作。我会在这里重新发布它们,因为我没有足够的代表对实际问题发表评论:


以下是我为使PyObjC在Snow Leopard中工作所做的工作:

  • 使用Finder,我转到Go > Connect to Server...并以访客身份连接到http://svn.red-bean.com/pyobjc/trunk/pyobjc/pyobjc-xcode/

  • 然后,我在Xcode的本地系统上创建了一个名为~Library/Application Support/Developer/Shared/Xcode/的文件夹。 (你可能已经有了这个文件夹,但我还没有为自己定制任何东西)。

  • 我将红豆服务器中的File Templates文件夹复制到我的新Xcode文件夹中。

  • Project Templates文件夹复制到其他位置,例如桌面。

  • 使用终端,导航到桌面上的临时项目模板文件夹并运行此命令以“构建”模板。:

  

$ cd~ / Desktop / Project \ Templates /

     

$ ./project-tool.py -k -v --template~ / Desktop / Project \ Templates / Cocoa-Python \ Application / CocoaApp.xcodeproj / TemplateInfo.plist Cocoa-Python \ Application~ / Library / Application \支持/开发人员/共享/ Xcode / Project \ Templates / Cocoa-Python \ Application


当我尝试运行以./project-tool.py开头的行时,我在终端中收到以下错误:

Traceback (most recent call last):  
  File "./project-tool.py", line 22, in <module>  
     from Foundation import NSDictionary  
 ImportError: No module named Foundation

我正在运行Snow Leopard并已安装Xcode 3.2.1,并已阅读此模块应已安装并正常运行。我已经读过你可以通过在Python命令行中运行>>> import objc来测试PyObjC模块是否正常工作。当我运行这个时,我得到:

>>> import objc
Traceback (most recent call last):  
  File "<stdin>", line 1, in <module>  
ImportError: No module named objc  

有人可以帮我消除这个错误吗?看起来我应该能够通过我的Snow Leopard安装自动完成所有这些操作,但我不能。

8 个答案:

答案 0 :(得分:24)

我遇到了同样的问题。通过使用homebrew安装我自己的Python来修补我的想法,我认为是。

因为我担心混合python版本,而不是如上所述创建链接,我使用以下方法安装了一个新的pyobjc:

$ pip install pyobjc

感兴趣,来自(http://pythonhosted.org/pyobjc/

  

PyObjC项目旨在提供Python和Objective-C编程语言之间的桥梁。

答案 1 :(得分:5)

好的,事实证明,修改mjv的答案,我能够通过输入

来使其工作
export PYTHONPATH="/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/PyObjC/"

在执行./project-tool.py行之前。我仍然觉得我必须这样做是荒谬的,如果有人能够理解为什么,我会很高兴知道。

这样做也得到了

>>> import objc

线路工作。

答案 2 :(得分:4)

答案 3 :(得分:2)

两件事之一:

  • 基金会模块不存在
  • 或者Python解释器不知道何时找到此文件

Python在PythonPath中查找模块

有关如何创建 Python路径等的详细信息,请参阅此SO question

答案 4 :(得分:2)

for python 2.7

export PYTHONPATH =“/ System / Library / Frameworks / Python.framework / Versions / 2.7 / Extras / lib / python /”

答案 5 :(得分:1)

运行python -v来跟踪导入语句,这也适用于交互模式。

答案 6 :(得分:1)

我可以通过运行/usr/bin/python file-to-run.py

在我的OSX上使用Foundation访问Python安装

答案 7 :(得分:0)

  1. 删除您的python或删除site-packages / Foundation |网站包/基础

  2. pip3安装pyobjc

基金会名称与https://pypi.org/project/foundation/

冲突