簡體   English   中英

MacPorts安裝后,讓PyGame導入Python解釋器

[英]Getting PyGame to import in Python interpreter after MacPorts install

我正在嘗試開始使用pygame模塊,但無法運行它。 我正在將Mountain Lion與Python 2.7和MacPorts結合使用,但是在發現並開始使用MacPorts之前,我還使用Anaconda安裝了一些科學和數學模塊。 請注意,在我開始以下任何操作之前,我的MacPorts才剛剛更新。 我最初嘗試僅使用:

sudo port install py27-game

看起來像是可以正常工作,並且一切設置都沒有問題。 但是,當我從命令行進入Python解釋器並輸入:

import pygame

我得到答復:

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

因此,我進去做了:

import sys
print sys.path

這給了:

 ['', '/Users/trav/anaconda/lib/python27.zip', '/Users/trav/anaconda/lib/python2.7',
 '/Users/trav/anaconda/lib/python2.7/plat-darwin',   
 '/Users/trav/anaconda/lib/python2.7/plat-mac',  
 '/Users/trav/anaconda/lib/python2.7/plat-mac/lib-scriptpackages', 
 '/Users/trav/anaconda/lib/python2.7/lib-tk', '/Users/trav/anaconda/lib/python2.7/lib-  
 old', '/Users/trav/anaconda/lib/python2.7/lib-dynload',  
 '/Users/trav/anaconda/lib/python2.7/site-packages', 
 '/Users/trav/anaconda/lib/python2.7/site-packages/PIL', 
 '/Users/trav/anaconda/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info']

因此,我猜測是因為在最初將NumPy,SciPy和Matplotlib設置放在此處時使用了Anaconda設置,這導致MacPorts在路徑中與此發生沖突。

我應該只刪除Ananconda軟件包嗎? 如果是這樣,當我這樣做時如何去掉這些依賴關系?

好的,所以我找出了問題所在,這就是我的出路。 我進去並用以下命令刪除了蟒蛇包:

rm -r ~/anaconda

然后,我使用macports通過以下命令基本上重新安裝了整個scipy堆棧:

sudo port install py27-wxpython py27-numpy py27-matplotlib py27-scipy py27-ipython

這花費了一些時間進行編譯,完成后,我進入命令行並使用:

sudo port select --set python python27

之后,我打開了解釋器,並導入了我所有的科學計算需求,而沒有問題和pygame,這是我先前在macports上安裝的。 我希望這對以后的人有所幫助。 還:當您刪除像anaconda之類的軟件包時,請確保關閉並關閉終端,然后重新打開它,否則它將仍然嘗試使用anaconda的依賴關系,而不再依賴anaconda。 我已經設置了macports,因此在刪除a​​naconda之后,macports路徑將成為默認路徑。

最后編輯。 為了使所有這些都能正確運行,並允許我從emacs以及所有導入的模塊中運行腳本,我必須從普通的emacs編輯器切換至aquamacs,以便從內部使用正確的路徑。 emacs環境,或者我可以只使用/Application/Emacs.app/Contents/MacOS/Emacs從終端運行emacs。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM