如下所示:
1
2
|
unresolved reference 'error_code_input_error' less... (ctrl + f1) this inspection detects names that should resolve but don't. due to dynamic dispatch and duck typing, this is possible in a limited but useful number of cases. top - level and class - level items are supported better than instance items. |
問題描述
pycharm顯示無法引用到的這些類,即使這些類都在工程中,看看文件上方的import會發(fā)現(xiàn)對應的模塊import不成功。
分析
既然這些類都在工程中,那么import不成功就是因為路徑沒對應,事實上是pycharm默認該項目的根目錄為source目錄,所以import使用絕對路徑而不是相對路徑的話,就會從項目的根目錄中查找,而不是我們希望的其中的/src目錄,所以import不成功。
解決方法
改成相對路徑
1
|
from ...package import * |
第一個.表示當前目錄,后面的每一個'.'表示上一層目錄。用相對目錄可以保證import成功,但是不建議這種寫法,因為如果當前這個文件要移動到其他包的話,就要改很多地方了,當然,使用相對路徑表示可以隨意更改包名,只要保證
在pycharm中設置source路徑
1
|
file –>setting–>project:server–>project structure |
將放package的文件夾設置為source,這樣import的模塊類等,就是通過這些source文件夾作為根路徑來查找,也就是在這些source文件夾中查找import的東西。
以上這篇完美解決pycharm無法導入包的問題 unresolved reference就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/u014496330/article/details/55211398