2012-09-03 47 views
1

使用py2app將y .py轉換爲.app。首先看起來很好,但是當我去執行open()和f.write(如下)創建一個.txt文件時,它不會創建文件。open()/ f.write()一旦python使用py2app「編譯」就無法工作

f = open(name + ".txt", "w") 
f.write("users inputs here") 

當我運行程序這工作絕對罰款的.py

任何人有任何想法,我似乎無法找到任何東西在那裏上解釋了爲什麼這種情況正在發生。

+4

你使用的是相對路徑還是絕對路徑? –

+1

*它不會創建文件*:你是否收到錯誤信息? – cdarke

+0

當我作爲.py或.app運行時沒有錯誤消息,並且路徑是相對的,我認爲即使我想讓它在與.app相同的目錄中使用txt文件 – user1630350

回答

3

問題是當從Finder啓動應用程序時,當前目錄設置爲/。因此,路徑與/相關,而不是您的應用程序包。

要獲取Python exe文件的路徑,請嘗試sys.executable。請注意,您可能需要添加../../才能跳出Contents/MacOS目錄。

但是,更好的解決方案可能是簡單地使用文件對話框,允許用戶選擇保存位置。

相關問題