Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager

加入好友
加入社群
Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

參考此篇文章

於VS code目錄底下

C:\Users\Mars\AppData\Local\Programs\Microsoft VS Code

建了.vscode目錄

寫了settings.json

Window環境可以解決

VS code import 模組後

no module錯誤

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

{
    “code-runner.runInTerminal”: true,
    “python.pythonPath”: “C:\\ProgramData\\Anaconda\\python.exe”,
    “code-runner.executorMap”: {
        “python”: “python.exe -u”
    }
}
有寫入settings.json即可
py檔放在
C:\Python\Mydocx
VS code則將docx生成在上一層資料夾
C:\Python\
誤以為settings.json無用
 
老師的settings.json:
Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王
 
參考老師跟自身環境
寫的settings.json:
{
    “python.defaultInterpreterPath”: “C:\\ProgramData\\Anaconda\\python.exe”,
    “files.encoding”: “utf8”,
    “terminal.integrated.profiles.windows”:
    {
        “Command Prompts”:
        {
            “path”: [“${env:windir}\\System32\\cmd.exe”],
            “args”: [],
            “icon”: “terminal-cmd”
        }
    },
    “terminal.integrated.defaultProfile.windows”: “Command Prompts”,
    “editor.autoIndent”: “advanced”
}
Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

 

語法:

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

spyder 5.1.5執行結果有11個: 

path list: [‘C:\\ProgramData\\Anaconda\\python39.zip’, ‘C:\\ProgramData\\Anaconda\\DLLs’, ‘C:\\ProgramData\\Anaconda\\lib’, ‘C:\\ProgramData\\Anaconda’, ”, ‘C:\\Users\\Mars\\AppData\\Roaming\\Python\\Python39\\site-packages’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\win32’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\win32\\lib’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\Pythonwin’, ‘C:\\ProgramData\\Anaconda\\python.exe’]
幾個path? 11

 

VS code執行結果只有10個:

C:\Python>python -u “c:\Python\sysTest.py”
path list: [‘c:\\Python’, ‘C:\\ProgramData\\Anaconda\\python39.zip’, ‘C:\\ProgramData\\Anaconda\\DLLs’,
‘C:\\ProgramData\\Anaconda\\lib’, ‘C:\\ProgramData\\Anaconda’, ‘C:\\Users\\Mars\\AppData\\Roaming\\Python\\Python39\\site-packages’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\win32’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\win32\\lib’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\Pythonwin’]
幾個path? 10

 

Spyder比VScode多那一個路徑?

使用set的差集功能:

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

Spyder比VScode多一個路徑:

‘C:\\ProgramData\\Anaconda\\python.exe’

 

參考差集的結果

程式碼前面多加這幾行

VS code還是跑不出來docx

(其實是生成在上一層目錄

這一段程式碼非必要)

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

 

Spyder 5.3.3執行sys.path

結果只有6個: 

[, ‘C:\\Program Files\\Spyder\\Python\\python38.zip’, ‘C:\\Program Files\\Spyder\\Python’, ‘C:\\Program Files\\Spyder\\pkgs’, ‘C:\\Program Files\\Spyder\\pkgs\\IPython\\extensions’, ‘C:\\Users\\Mars\\.ipython’]

#一個是空的,實際只有5個路徑

使用set的差集比較

Spyder 5.1.5 & 5.3.3: 

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

以下10個路徑是5.3.3沒有的

{‘C:\\ProgramData\\Anaconda\\python.exe’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\win32\\lib’, ‘C:\\ProgramData\\Anaconda\\DLLs’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\win32’, ‘C:\\ProgramData\\Anaconda\\lib’, ‘C:\\ProgramData\\Anaconda’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages\\Pythonwin’, ‘C:\\ProgramData\\Anaconda\\python39.zip’, ‘C:\\Users\\Mars\\AppData\\Roaming\\Python\\Python39\\site-packages’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages’} 10

參考這篇文章

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

site-packages路徑:

C:\\Program Files\\Spyder\\Python\\lib\\site-packages

C:\Program Files\Spyder\Python\lib\site-packages

沒有lib\site-Packages的子目錄,

自己建的,裡面放mypath.pth

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

 

mypath.pth內容如下

有10個路徑:

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

再執行一次sys.path,

仍只有增加到8個

path list: [‘C:\\Program Files\\Spyder\\Python\\python38.zip’, ‘C:\\Program Files\\Spyder\\Python’, ‘C:\\Program Files\\Spyder\\pkgs’, , ‘C:\\Program Files\\Spyder\\Python\\lib\\site-packages’, ‘C:\\ProgramData\\Anaconda\\lib\\site-packages’, ‘C:\\Program Files\\Spyder\\pkgs\\IPython\\extensions’, ‘C:\\Users\\Mars\\.ipython’]
幾個path? 8 

(有一個路徑是空的)

 

把5.3.3 2的6-1個路徑

加入mypath中

反而降低到只有7個

還有一個路徑是空的

path list: [‘C:\\Program Files\\Spyder\\Python\\python38.zip’, ‘C:\\Program Files\\Spyder\\Python’, ‘C:\\Program Files\\Spyder\\pkgs’, , ‘C:\\Program Files\\Spyder\\Python\\lib\\site-packages’, ‘C:\\Program Files\\Spyder\\pkgs\\IPython\\extensions’, ‘C:\\Users\\Mars\\.ipython’]
幾個path? 7

 

參考這篇文章,改變Anaconda的環境

但spyder也只有5.2.2

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

Anaconda多了一個Spyder533:

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

執行sys.path後

有12個路徑:

path list: [‘C:\\Users\\Mars\\.conda\\envs\\Spyder533\\python39.zip’, ‘C:\\Users\\Mars\\.conda\\envs\\Spyder533\\DLLs’, ‘C:\\Users\\Mars\\.conda\\envs\\Spyder533\\lib’, ‘C:\\Users\\Mars\\.conda\\envs\\Spyder533’, ”, ‘C:\\Users\\Mars\\AppData\\Roaming\\Python\\Python39\\site-packages’, ‘C:\\Users\\Mars\\.conda\\envs\\Spyder533\\lib\\site-packages’, ‘C:\\Users\\Mars\\.conda\\envs\\Spyder533\\lib\\site-packages\\win32’, ‘C:\\Users\\Mars\\.conda\\envs\\Spyder533\\lib\\site-packages\\win32\\lib’, ‘C:\\Users\\Mars\\.conda\\envs\\Spyder533\\lib\\site-packages\\Pythonwin’, ‘C:\\Users\\Mars\\.conda\\envs\\Spyder533\\lib\\site-packages\\IPython\\extensions’, ‘C:\\Users\\Mars\\.ipython’]
幾個path? 12

 

Spyder Console

!pip show numpy_financial

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

知道套件安裝在

C:\Python311\Lib\site-packages

 

Tools => PYTHONPATH manager:

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

按Add path按鈕

將上述路徑加入User paths

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

 

安裝Spyder會附帶python.exe

如何知道其安裝路徑?

import sys
print(sys.executable)
print(sys.version)

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

C:\Program Files\Spyder\Python\

可以將該路徑加入環境變數中

where python

python -V

Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

推薦hahow線上學習python: https://igrape.net/30afN

加入好友
加入社群
Python: Visual Studio Code (VS code) or Spyder import模組執行後,出現no module找不到指定模組錯誤, settings.json , import sys ; lst = sys.path ; sys.path.append() ;Spyder: Tools => PYTHONPATH manager - 儲蓄保險王

儲蓄保險王

儲蓄險是板主最喜愛的儲蓄工具,最喜愛的投資理財工具則是ETF,最喜愛的省錢工具則是信用卡

You may also like...

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *