當我運行從主我的代碼,它運行完全正常,但是當我嘗試建立主要爲使用py2exe exe文件,它給這個錯誤:py2exe是給我os.listdir代碼中的錯誤
Traceback (most recent call last):
File "main.py", line 118, in <module>
menu.menu.Menu()
File "menu\menu.pyo", line 20, in __init__
File "settingsManager.pyo", line 61, in getSetting
File "settingsManager.pyo", line 148, in __init__
WindowsError: [Error 3] The system cannot find the path specified: 'C:\\Users\\digiholic\\git\\universalSmashSystem\\main.exe\\settings\\rules/*.*'
它指的是該生產線是:
for f in os.listdir(os.path.join(os.path.dirname(__file__),'settings','rules')):
看起來os.listdir使用UNIX文件尋路找到的每個文件,並且Windows有沒有這一點。有沒有辦法以不會炸燬所有東西的方式使用listdir?
的路徑是有效的?從我所看到的,'main.exe'是一個文件,所以更多的路徑組件是沒有意義的。 –
正斜槓沒有問題(Windows同時接受)。但是當你打包成EXE時,你正在尋找的文件將不存在。 – ShadowRanger
所以,你是對的,main.exe不應該在路徑中。爲什麼os.path.dirname(\ _ \ _ file \ _ \ _)給我的文件名而不是它的目錄? –