2017-07-04 30 views
1

昨天我在我的樹莓派3(raspbian傑西)測試一些Python代碼,它需要的包pytz,所以我所做的:樹莓python3.4 PIP錯誤未知編碼CP437

sudo python3 -m pip install pytz 

再出現這種情況:

Traceback (most recent call last): 
    File "/usr/lib/python3/dist-packages/pip/basecommand.py", line 122, in main 
    status = self.run(options, args) 
    File "/usr/lib/python3/dist-packages/pip/commands/install.py", line 290, in run 
    requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle) 
    File "/usr/lib/python3/dist-packages/pip/req.py", line 1198, in prepare_files 
    do_download, 
    File "/usr/lib/python3/dist-packages/pip/req.py", line 1376, in unpack_url 
    self.session, 
    File "/usr/lib/python3/dist-packages/pip/download.py", line 582, in unpack_http_url 
    unpack_file(temp_location, location, content_type, link) 
    File "/usr/lib/python3/dist-packages/pip/util.py", line 640, in unpack_file 
    unzip_file(filename, location, flatten=not filename.endswith(('.pybundle', '.whl'))) 
    File "/usr/lib/python3/dist-packages/pip/util.py", line 510, in unzip_file 
    zip = zipfile.ZipFile(zipfp) 
    File "/usr/lib/python3.4/zipfile.py", line 937, in __init__ 
    self._RealGetContents() 
    File "/usr/lib/python3.4/zipfile.py", line 1016, in _RealGetContents 
    filename = filename.decode('cp437') 
LookupError: unknown encoding: cp437 

這不僅與pytz,我試圖更新/升級/重新PIP用:

sudo python3 -m pip install -U pip 

和同發生錯誤 有關如何解決此問題的任何想法?

我正在尋找並試圖解決它昨天 和我現在可以做的一切是格式化SD卡。

我的Pip版本是1.5.6,但我無法更新它,甚至下載代碼並運行setup.py,同樣的問題。

+0

相關,雖然具體到Windows和如何做shell編碼:https://stackoverflow.com/questions/878972/windows-cmd-encoding-change-causes-python-crash – jdv

+0

嗨@jmth,你有沒有嘗試過使用'pip3'而不是'pip'? –

回答

0

試過我盡我所能,在我的情況下,我會建議:

  • 複製所有重要的代碼,更改文件...
  • 格式化SD和從頭再來

最近我一直有短暫的停電事故,損壞了SD卡。