[英]Getting ImportError: No module named azure.storage.blob when doing python manage.py syncdb
當我嘗試在Django應用中執行python manage.py syncdb
時,出現錯誤ImportError:沒有名為azure.storage.blob的模塊 。 但事實是,如果進行pip freeze
則會安裝以下軟件包:
azure-common==1.0.0 azure-mgmt==0.20.1 azure-mgmt-common==0.20.0 azure-mgmt-compute==0.20.0 azure-mgmt-network==0.20.1 azure-mgmt-nspkg==1.0.0 azure-mgmt-resource==0.20.1 azure-mgmt-storage==0.20.0 azure-nspkg==1.0.0 azure-servicebus==0.20.1 azure-servicemanagement-legacy==0.20.1 azure-storage==0.20.3
很明顯,顯然已經安裝了天藍色存儲 。 為什么azure.storage.blob無法導入? 我什至進入我的.virtualenvs
目錄,並通向azure.storage.blob
(即~/.virtualenvs/myvirtualenv/local/lib/python2.7/site-packages/azure/storage/blob$
)。 它存在!
我該怎么辦? 這里的答案沒有幫助: 在Linux上安裝Azure Python api:importError:沒有名為storage.blob的模塊
注意:如果需要,請詢問更多信息
我有一個類似的問題。 為了緩解這種情況,我在這里關注了此討論: https : //github.com/Azure/azure-storage-python/issues/51#issuecomment-148151993
基本上,在嘗試syncdb
之前嘗試pip install azure==0.11.1
,我相信它將為您服務!
有一個與您相似的線程,請檢查我的答案以了解無法在Python中使用azure SDK的線程。
根據我的經驗,Python從某些庫路徑中import sys
第三方庫包,您可以通過代碼在python解釋器中import sys
& sys.path
來檢查它們。 因此,您可以嘗試在Python運行時中將包含已安裝的azure
軟件包的新路徑動態添加到sys.path
中,以解決此問題。 要添加新的庫路徑,您只需在代碼的sys.path.append('<the new paths you want to add>')
如import azure
sys.path.append('<the new paths you want to add>')
編寫sys.path.append('<the new paths you want to add>')
。
如果該方法沒有幫助,建議您嘗試重新安裝Python環境。 在Ubuntu上,您可以使用命令sudo apt-get remove python python-pip
和sudo apt-get install python python-pip
重新安裝Python 2.7
和pip 2.7
。(注意:當前的主要Linux發行版使用Python 2.7作為系統默認值版。)
如果將Python 3.4作為Django的運行時,則Ubuntu的apt軟件包名稱為python3
和python3-pip
,並且您可以在Ubuntu上使用sudo pip3 install azure
for Python 3.4
。
如有任何疑問,請隨時告訴我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.