12免費(fèi)建站網(wǎng)站百度關(guān)鍵詞搜索熱度查詢
最近在進(jìn)行一個(gè)Flask項(xiàng)目的過程中遇到了unresolved reference '包名'
的問題,在網(wǎng)上找了好久解決方案,并沒有一個(gè)能讓我一步到位解決問題的。
后來,我對(duì)該問題和網(wǎng)上的解決方案進(jìn)行了分析,發(fā)現(xiàn)網(wǎng)上大多數(shù)都是針對(duì)項(xiàng)目同一目錄下的py文件進(jìn)行該問題的解決。
一、同一目錄下模塊導(dǎo)入問題解決方案
正如下圖所示:
可以看到,上圖所示的問題是在Python從入門到實(shí)踐
目錄下的自定義my_module.py
文件無法正常導(dǎo)入。
解決方法是:在項(xiàng)目上 單擊右鍵
-> Mark Directory as
-> Sources Root
具體如下圖所示。
之后問題就會(huì)解決。
然后進(jìn)入設(shè)置:file
-> settings
最后,依次按照下圖展開 Build,Execution,Deployment -> Console -> Python Console -> Add source roots to PYTHONPATH
,勾選上3,選擇確定,問題解決。
當(dāng)然,這只是同一目錄下的模塊導(dǎo)入問題的解決方案。
二、不同目錄下模塊導(dǎo)入問題解決方案。
我所遇到的問題正如下所示,在processor
目錄下的AIDetector_pytorch.py
文件里面想要導(dǎo)入其它目錄models
中experimental
的attempt_load
函數(shù),遇到了unresolved reference
問題。
這時(shí)候再無腦使用上面的方法是行不通的,但解決方案的原理還是上面的方法。不過我們要選擇好Sources Root
,也就是選好你的根路徑。
拿我的路徑舉例子,我的根路徑不應(yīng)該是F:\flaskProject2
,而應(yīng)該是F:\flaskProject2\back-end
。
具體解決方案如下:
還是按照上面解決方案的第一種方法,不過我們選擇的設(shè)置的Sources Root
變了。
完成以后可以看下項(xiàng)目結(jié)構(gòu):
這時(shí)候可以看到Source Folders是back-end目錄。
然后問題就解決了。