2014-10-27 103 views
0

我想在python 3.2上安裝一個模塊,但是我無法安裝。我正在使用Windows 7.我需要僅在Python 3.2上安裝該模塊,因此適用於其他版本的Python的解決方案對我沒有幫助(我在Python 2.7或3.3,3,3安裝模塊時沒有問題)我擺脫了我所有其他版本的Python,因爲我認爲這可能是問題。用Python 3.2安裝geopy時遇到困難

我已經嘗試使用pip安裝,並且手動安裝軟件包,兩者都不起作用。乍一看,它看起來像我正確安裝setuptools和pip。下面是我嘗試安裝pip時得到的輸出結果

Installed c:\python32\lib\site-packages\setuptools-7.0-py3.2.egg 
Processing dependencies for setuptools==7.0 
Finished processing dependencies for setuptools==7.0 
PS C:\> python32 .\get-pip.py 
Requirement already up-to-date: pip in c:\python32\lib\site-packages 
Cleaning up... 
PS C:\> pip install geopy 

看起來不錯,對嗎?

然後,當我試圖通過進入pip install geopy這裏用的是輸出我得到

pip: the term PIP is not recognized as the name of a cmdlet, function or operable program等我確信,蟒蛇3.2路徑環境中指定,並卸載了蟒蛇的所有其他版本。我不知道我還能做什麼?

我也嘗試手動安裝geopy。我去了github上的geopy頁面,並按下了「下載ZIP」。然後我將這個文件夾解壓到python32的lib/site-packages目錄中。當我嘗試使用setup.py進行安裝時(python32 setup.py install)以下是我得到的錯誤消息。我不知道這是什麼錯誤消息意味着

Traceback (most recent call last): File "setup.py", line 6, in <module> from geopy import __version__ as version File "C:\python32\lib\site-packages\geopy-master\geopy\__init__.py", line 10, in <module> from geopy.location import Location File "C:\python32\lib\site-packages\geopy-master\geopy\location.py", line 21 def __init__(self, address=u"", point=None, raw=None):

回答

0

更新:爲Python 3.2 GeoPy 1.6.0推出的支持,所以更新它,它應該安裝和工作。


老答案:

這是geopy一個bug,和/或它不支持的Python 3.2。在這個Python版本中,字符串不能以u"the string"的形式出現,因爲它是一個SyntaxError。對於Python 3.3,這已修復爲PEP-414

儘管您可以安裝該軟件包,但geop的快速修復方法是編輯已安裝的文件以刪除幾個模塊文件中的u,例如「C:\ python32 \ lib \ site-packages \ geopy-master \ geopy \ location.py「(如你的問題所示)。

例如:

  • 變化address=u""address=""
  • 變化signature_method=u"HMAC-SHA1"signature_method="HMAC-SHA1"
  • 另外注意單引號的變化,例如u'the string'