私は通常、Python スクリプト内で作成された xls ファイルをハード ドライブに保存します。たとえば、これは通常、パンダの場合は非常に簡単なことです。
私の問題は、py2app でコンパイルされたスクリプトからこれを達成しようとしていることです。easyguiを使ってファイルの保存先(どのフォルダ)を聞いてみたのですが、どうしたらいいのかわからず、アプリにコンパイルしたら最後にクラッシュしてしまいます。
これが私が試みたものです:
path = easygui.diropenbox() #Easygui is used to get a path in order to save the file to the right place
dfA = pd.DataFrame(A) #the pandas dataframe
C = ['Gen','Density','ASPL','Modularity'] # pandas' excel file header
name = str(n) + "_" + str(NGEN) + "_" + str(nbrhof) + ".xls" # the name of the file (should I add the path here somewhere?)
dfA.to_excel(name, path, header=C,index=False) # exporting the dataframe to excel
このスクリプトを変更して、py2app でコンパイルされたアプリから、「name」という名前の Excel ファイルを「easygui.diropenbox()」で選択したフォルダーに保存できますか?
トレースバックは次のとおりです。
Traceback (most recent call last):
File "/Users/myself/Dropbox/Python/Tests/test2/myscript.py", line 135, in <module>
nx.write_gexf(G, path, name+".gexf")
File "<string>", line 2, in write_gexf
File "/Library/Python/2.7/site-packages/networkx-1.8.1-py2.7.egg/networkx/utils/decorators.py", line 241, in _open_file
fobj = _dispatch_dict[ext](path, mode=mode)
IOError: [Errno 21] Is a directory: '/Users/Rodolphe/Desktop/chosenfolder'
[Finished in 65.5s with exit code 1]
[shell_cmd: python -u "/Users/myself/Dropbox/Python/Tests/test2/myscript.py"]
[dir: /Users/Rodolphe/Dropbox/Python/Tests/test2]
[path: /usr/bin:/bin:/usr/sbin:/sbin]