簡體   English   中英

導入錯誤:“沒有命名模塊”。 但是模塊已經安裝在 dist-packages 中

[英]ImportError: “No modules named”. But modules already installed in dist-packages

我正在使用 python2.7 並嘗試導入模塊,例如psycopg2 但是當我嘗試導入模塊時出現以下錯誤:

import psycopg2
ImportError: No module named psycopg2

當我嘗試pip安裝模塊時,它給了我以下消息:

Requirement already satisfied (use --upgrade to upgrade): psycopg2 in /usr/local/lib/python2.7/dist-packages
Cleaning up...

誰能告訴我我做錯了什么?

該模塊是否安裝在您的 PYTHONPATH 中?

您可以驗證運行此命令行:

python -c "import sys; print '/usr/local/lib/python2.7/dist-packages' in sys.path"

嘗試將 psycopg2 模塊(或包,我不知道 psycopg2)放在腳本的同一目錄中,然后嘗試導入它。 導入首先在當前目錄中搜索。

import sys
print sys.path

應該按從第一個到最后一個的順序顯示哪些是 python 解釋器的搜索目錄。 第一個始終是當前目錄,然后是 PYTHONPATH 中的目錄,然后是依賴於 python setup 的目錄。

請參閱: https : //docs.python.org/2.7/tutorial/modules.html#the-module-search-path

您可以編輯 sys.path 以訪問您的模塊,或將模塊放入其目錄之一。

確保您的 PYTHONPATH 和/或 PYTHONHOME 變量設置正確。 當 Python 查找要導入的模塊時,會搜索這些環境/命令行變量。 因此,如果模塊安裝正確,您應該確保該位置的引用位於這些變量之一中。

查看這些鏈接PYTHONHOMEPYTHONPATH

確保您在安裝軟件包的同一 python 版本中運行您的程序

例如,您已經在 python3 中安裝了包,並且您正在使用 python2 運行代碼..這可能是給出錯誤的情況

檢查您安裝包的位置,對我來說,它位於 python 32 位文件夾c:\\program files (x86)\\python37-32\\lib\\site-packages 中

我在 x64 位模式下運行 VsCode 並且包位於 x86 文件夾中的問題。

在這里查看如何更改您正在使用的解釋器 - 在我的情況下 - 我需要將其設置為 Python 3.7.4(x86) 32 位(互聯網上的圖像):

在此處輸入圖片說明

暫無
暫無

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

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