pytest——pycharm中右擊運行(run)沒有問題,在terminal中運行pytest報錯:E ModuleNotFoundError: No module named


參考了這個解決辦法:https://blog.csdn.net/qq_36829091/article/details/82180866

 

我的是Windows,linux的和Windows的解決辦法有些不一樣,但也是大同小異,需要改一下環境變量

 

這是我的文件目錄

 

需要在test_calc.py中導入python_math_demo里的calc,在pycharm中右擊運行沒有任何問題。

在terminal中運行pytest報錯

 

 

 

 

 如果是pycharm的錯誤或者是導入的錯誤,不可能一個能運行成功一個運行錯誤。所以我猜是pycharm的IDE的運行機制和terminal的運行機制不一樣才導致這種情況

參考資料所得:https://blog.csdn.net/qq_36829091/article/details/82180866

Python在啟動解釋器(Interpreter)時不僅會導入環境變量中sys.path發現的模塊,還會導入當前工作目錄下的模塊

具體什么事sys.path和當前工作模塊,可參考上面的鏈接。

通過在文件頭加上輸出環境變量,然后再terminal中運行pytest。運行結果的第一個路徑就是當前路徑

 

 

解決辦法:

第一種方法:是在環境變量中加入當前模塊路徑。(但由於我不喜歡在環境變量中加很多東西,所以就省略了這步)

第二種方法:以下兩個命令其中一個就可,都表示我的當前工作目錄。

 

 

 

這樣就OK了

如何知道自己的當前工作目錄呢,就是你pycharm的虛擬環境目錄的名稱

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM