python导入类有红线_python踩坑系列之导入包时下划红线及报错“No module named”问题...
python踩坑系列之導入包時下劃紅線及報錯“No module named”問題
使用pycharm編寫Python時,自己寫了一個包(commontool),在同級另一個路徑下(fileshandle)導入此包時,包名和模塊名下都有紅色下劃線,運行程序報錯 “?ModuleNotFoundError: No module named 'commontool' ”,針對此問題的幾種解決辦法:
方法一:
由于包和文件夾是有區別的,文件夾在創建時只會生成一個文件夾,不可以被導入。包在創建的時候會自動生成一個“?__init__.py ”的文件,這個文件定義了包的屬性和方法,所以包是可以被導入的。也可以在創建文件后,手動新建一個“?__init__.py ”文件。在包下“?__init__.py ”文件文件可以是空,但必須存在。所以要被導入,前提是類型必須是包類型。
方法二:
在?__init__.py文件中添加變量,如下:
__all__ = ["module_1","module_2","module_3"]
module為要該包下可以被導入的模塊。
方法三:
在 setting --> Project Structure 下將要被導入的設置為Sources
方法四:
1>如果要導入的包是在打開路徑的子目錄下,則可以直接進行導入,如下圖:
2>如果要導入的包是在項目的子目錄的子目錄下,也就是我這次遇到的情況,則要將包的父目錄設置成Sources。
總結
以上是生活随笔為你收集整理的python导入类有红线_python踩坑系列之导入包时下划红线及报错“No module named”问题...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蚍蜉撼树下一句是什么呢?
- 下一篇: 有好看的电影推荐吗