2016-03-02 28 views
0

編輯:所以,從本地路徑安裝Ruamel.yaml後,卸載它並重新安裝它工作完美。我不知道爲什麼重新安裝它改變了什麼,但嘿,它的工作原理。在pythonanywhere中手動安裝模塊並更改其位置

請關閉此問題。

原文:

我想Python3.4安裝Ruamel.Yaml模塊PythonAnywhere。但是,如果我試圖用PIP3.4我曾經得到以下結果:

Could not find a version that satisfies the requirement ruamel.yaml (from versions:) 
No matching distribution found for ruamel.yaml 

試圖解決的是,我下載ruamel.yaml-0.11.6.tar.gzthe file tagged as Source),並用PIP3.4使用 安裝-e標誌。顯然,PIP3.4告訴我,這是成功的,並 試圖重新安裝該軟件包給我下面的消息:

pip3.4 install --user ruamel.yaml 
Requirement already satisfied (use--upgrade to upgrade): ruamel.yaml 
in /home/<username>/dumpfolder_version3/ruamel.yaml-0.11.6 

然而,當我嘗試運行我得到以下錯誤庫...

Traceback (most recent call last):   
File "/home/<username>/mailgun/configurar_menu.py", line 3, in <module> 
import ruamel.yaml as yaml 
ImportError: No module named 'ruamel' 

你有什麼想法可能是什麼問題?

如果我嘗試重新安裝已另一個包Python有,我得到這個消息

pip3.4 install --user pyyaml 
Requirement already satisfied (use --upgrade to upgrade): pyyaml 
in /usr/local/lib/python3.4/dist-packages 

莫非區別是什麼問題?

+2

作爲提示:如果問題解決了,您可以刪除或自己回答 –

+0

您是否可以確認在重新安裝時沒有使用'install -e'? – Anthon

+0

是的,當我重新安裝時,我沒有使用** - e **標誌。由於某種未知的原因,這次它有效(記住,我之前嘗試過,它沒有使用兩個ork)。可能是* PythonAnywhere * PIP問題。 – hombrepython

回答

1

可能存在一些問題,但不幸的是我無法訪問pythonanywhere,因此我無法測試它們。不過我有ruamel.yaml及其安裝¹的一些經驗。

主要問題是您嘗試以可編輯模式進行安裝,但ruamel是名稱空間,pip install -e無法正確處理該問題。不幸的是,ruamel.yamlsetup.py目前沒有捕獲到(它的確如果您嘗試使用python setup.py進行安裝),並且因爲這不會警告或更正其行爲。

您的網站包目錄可能已經搞砸了,因此pip無法恢復,但您可以嘗試pip uninstall -y ruamel.yaml。之後,檢查從ruamel開始的所有內容是否從lib/python3.4/site-packages目錄中刪除,並用pip install ruamel.yaml*tar.gz重新安裝。如果你從頭開始,後者也是你需要做的。

正確安裝後3。4,你應該具備以下,如果你在你的site-packages目錄做tree ruamel*

ruamel 
└── yaml 
    ├── comments.py 
    ├── compat.py 
    ├── composer.py 
    ├── configobjwalker.py 
    ├── constructor.py 
    ├── cyaml.py 
    ├── dumper.py 
    ├── emitter.py 
    ├── error.py 
    ├── events.py 
    ├── __init__.py 
    ├── loader.py 
    ├── main.py 
    ├── nodes.py 
    ├── parser_.py 
    ├── __pycache__ 
    │   ├── comments.cpython-34.pyc 
    │   ├── compat.cpython-34.pyc 
    │   ├── composer.cpython-34.pyc 
    │   ├── configobjwalker.cpython-34.pyc 
    │   ├── constructor.cpython-34.pyc 
    │   ├── cyaml.cpython-34.pyc 
    │   ├── dumper.cpython-34.pyc 
    │   ├── emitter.cpython-34.pyc 
    │   ├── error.cpython-34.pyc 
    │   ├── events.cpython-34.pyc 
    │   ├── __init__.cpython-34.pyc 
    │   ├── loader.cpython-34.pyc 
    │   ├── main.cpython-34.pyc 
    │   ├── nodes.cpython-34.pyc 
    │   ├── parser_.cpython-34.pyc 
    │   ├── reader.cpython-34.pyc 
    │   ├── representer.cpython-34.pyc 
    │   ├── resolver.cpython-34.pyc 
    │   ├── scalarstring.cpython-34.pyc 
    │   ├── scanner.cpython-34.pyc 
    │   ├── serializer.cpython-34.pyc 
    │   ├── tokens.cpython-34.pyc 
    │   └── util.cpython-34.pyc 
    ├── reader.py 
    ├── representer.py 
    ├── resolver.py 
    ├── scalarstring.py 
    ├── scanner.py 
    ├── serializer.py 
    ├── tokens.py 
    └── util.py 
ruamel.yaml-0.11.6.dist-info 
├── DESCRIPTION.rst 
├── INSTALLER 
├── METADATA 
├── metadata.json 
├── namespace_packages.txt 
├── RECORD 
├── top_level.txt 
└── WHEEL 

¹我是筆者

+0

卸載ruamel.yaml(使用上面的代碼)後,我可以** pip3.4安裝--user ruamel.yaml **。我不知道爲什麼它以前不能工作,我對Python的包管理知之甚少,但這次它完美運行。謝謝您的幫助。很高興看到一位作者對他的軟件非常關心。 :) – hombrepython

0

如上修改,這已經解決了。據亞穆埃爾自己的作者說,這可能是因爲國旗讓所有東西都搞亂了。