1.錯誤描述
以前在學習python的過程當中,導入本身寫入的包文件時。from 本身寫的類,會發現沒有彈出選擇。而且全輸入類名稱後會發現類名與相關導入的方法會爆紅。如圖:python
2.緣由分析
pycharm中,source root概念很是重要,當你在代碼中寫相對路徑的時候,就是以source root爲起點進行查詢。學習
而pycharm中,當前的項目文件夾 是默認的source root,當你使用import語句導入模塊時,Pycharm默認在project folder中尋找;spa
因此當你在project folder下的某個subfolder導入某個一樣定義在這個subfolder中的模塊時,會出現導入錯誤。
3d
3.解決方法
問題已經找到了,pycharm不會將當前文件目錄自動加入本身的sourse_path。因此咱們要告訴pycharm就好了。下面有三種方法(3.1和3.二、3.3),都能比較方便的解決問題:blog
3.1 加一個「點」
這種方法試用於在方法在同級目錄pycharm
例如:class
3.2 寫入類所在文件名+「點」
這種方法適用於類在非同級目錄下import
例如:方法
3.3 添加「當前目錄」
這種方法也是我後面把家裏代碼帶到公司打開報錯以後才發現的。im
既然,pycharm不會將當前文件目錄自動加入本身的sourse_path。那麼咱們就手動告訴他。
右鍵目錄名 點擊make_directory as --> sources path 將當前工做的文件夾加入source_path就能夠了。步驟以下圖: