如何徹底解決python?NameError:name?'__file__'?is?not?defined
問(wèn)題背景
我創(chuàng)建了一個(gè)函數(shù),里面包含了一個(gè)獲取當(dāng)前執(zhí)行文件路徑的代碼
current_path = os.path.dirname(os.path.abspath(__file__))
我把這段代碼放在了函數(shù)中間位置(圖片中已經(jīng)被注釋掉的部分)。

在CMD窗口執(zhí)行python文件時(shí),報(bào)NameError: name ‘file’ is not defined錯(cuò)誤。(也在linux中執(zhí)行過(guò),同樣報(bào)錯(cuò))
查找了幾個(gè)方案(比如,下圖所示),有說(shuō)要把__file__改成’file’的(這個(gè)根本就是扯淡),還有說(shuō)要把os.path.abspath改成os.getcwd()的(獲取的是執(zhí)行命令的當(dāng)前路徑)。

測(cè)試了這幾個(gè)方案,并不能獲取當(dāng)前執(zhí)行文件的絕對(duì)路徑。
解決方案
因?yàn)橐郧拔业倪@段代碼是可以正常執(zhí)行的,改過(guò)之后就出現(xiàn)了這個(gè)錯(cuò)誤。
各種百度、琢磨,一晚之后,翌日清晨,我把這段代碼放在了函數(shù)的最開(kāi)始位置。然后測(cè)試成功了!成功了!成功了!
這段代碼就可以正常獲取當(dāng)前文件的路徑而不報(bào)錯(cuò)誤!

記錄下自己的踩坑之路,以便遇到相同坑的人能盡快跳出??!
總結(jié)
到此這篇關(guān)于如何徹底解決python NameError:name '__file__' is not defined的文章就介紹到這了,更多相關(guān)python NameError:name __file__ is not defined內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python報(bào)錯(cuò):NameError:?name?‘xxx‘?is?not?defined的解決辦法
- Python報(bào)錯(cuò)NameError: name ‘secrets‘ is not defined解決
- Python中NameError: name ‘Image‘ is not defined的問(wèn)題解決
- Python已解決NameError: name ‘xxx‘ is not defined
- Python錯(cuò)誤NameError:name?'X'?is?not?defined的解決方法
- Python UnboundLocalError和NameError錯(cuò)誤根源案例解析
- 解決NameError:name'pip'is not defined使用pip時(shí)報(bào)錯(cuò)問(wèn)題
相關(guān)文章
Python中的numpy數(shù)組維度擴(kuò)展詳解
這篇文章主要介紹了Python中的numpy數(shù)組維度擴(kuò)展詳解,在numpy數(shù)組中,切片功能非常常用,例如x[:]表示取x的所有元素,可以通過(guò)在切片中增加None或者np.newaxis實(shí)現(xiàn),它們的作用就是在相應(yīng)的位置上增加一個(gè)維度,在這個(gè)維度上只有一個(gè)元素,需要的朋友可以參考下2023-09-09
python實(shí)現(xiàn)測(cè)試工具(二)——簡(jiǎn)單的ui測(cè)試工具
這篇文章主要介紹了python如何實(shí)現(xiàn)簡(jiǎn)單的ui測(cè)試工具,幫助大家更好的利用python進(jìn)行測(cè)試工作,感興趣的朋友可以了解下2020-10-10
Python 中的 XML 轉(zhuǎn)換利器xml2dict詳解
xml2dict是一個(gè)Python庫(kù),可以將XML數(shù)據(jù)轉(zhuǎn)換為字典,也支持反向轉(zhuǎn)換,它簡(jiǎn)化了XML的處理,使之像處理JSON一樣簡(jiǎn)單,適用于Web服務(wù)數(shù)據(jù)交換、配置文件讀取等場(chǎng)景,安裝簡(jiǎn)單,使用方便,還可以通過(guò)自定義轉(zhuǎn)換器處理XML屬性和命名空間2024-10-10
Python滲透測(cè)試入門(mén)之Scapy庫(kù)的使用詳解
Scapy?是一個(gè)用來(lái)解析底層網(wǎng)絡(luò)數(shù)據(jù)包的Python模塊和交互式程序,該程序?qū)Φ讓影幚磉M(jìn)行了抽象打包,使得對(duì)網(wǎng)絡(luò)數(shù)據(jù)包的處理非常簡(jiǎn)便。本文就來(lái)聊聊它的具體使用,希望對(duì)大家有所幫助2023-03-03
Pytorch使用DataLoader實(shí)現(xiàn)批量加載數(shù)據(jù)
這篇文章主要介紹了Pytorch使用DataLoader實(shí)現(xiàn)批量加載數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
python調(diào)試模式無(wú)響應(yīng)解決案例
這篇文章主要介紹了python調(diào)試模式無(wú)響應(yīng)解決案例,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07

