最近學習python的django,需要導入本地的view模塊,參考一些別人導入包的方法
import syssys.path.append('C://Users//hhua//Desktop')#括號中的內容為A所在的目錄importA.Demo1#不能加.py否則會報錯(錯誤為沒有這個文件A.Demo1.py)
但是不論用相對路徑導入還是絕對路徑導入,運行都會出錯,但是我又用命令行試了一遍,發現命令行中可以,而且打印出包路徑(print(xxx.__file__)沒有重名的包,而且路徑也都對,所以樓主認為是pycharm出了問題,后來網上搜索發現是因為pycharm中搜索包時都是從根目錄查找,所以有時文件多了就會混亂,需要把當前文件夾指定為sorce目錄即可。具體操作如下:(圖片源于https://stackoverflow.com/questions/21236824/unresolved-reference-issue-in-pycharm)
下面有幾種其它的方法,個人覺得最后一種最好用
import syssys.path
系統環境是一個list,可以將自己需要的庫添加進入,例如mysql庫,hive庫等等。有三種方式添加,均驗證通過:
1.臨時添加,在一個shell窗口中
import syssys.pathsys.path.append(path)
但退出該shell窗口,即失效
2.使用pth文件永久添加
使用pth文件,在 site-packages 文件中創建.pth文件,將模塊的路徑寫進去,一行一個路徑,以下是一個示例,pth文件也可以使用注釋:
# .pth file for the my project(這行是注釋)E:/DjangoWordE:/DjangoWord/mysiteE:/DjangoWord/mysite/polls
這個不失為一個好的方法,但存在管理上的問題,而且不能在不同的python版本中共享
3.使用PYTHONPATH環境變量(最好用)
使用PYTHONPATH環境變量,在這個環境變量中輸入相關的路徑,不同的路徑之間用逗號(英文的!)分開,如果PYTHONPATH變量還不存在,可以創建它!
路徑會自動加入到sys.path中,而且可以在不同的python版本中共享,應該是一樣較為方便的方法
以上這篇pycharm無法導入本地模塊的解決方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答