使用python
运行时,我的脚本运行正常,但在使用py2app
构建文件后,文件和文件夹将在.app/Contents/Resources
中创建。我使用os.getcwd()
找出脚本所在的位置。
如何解决此问题并确保我的文件是在包含目录的应用程序中创建的?
Hacky fix
这是一个有效的黑客:
if re.search('([^/]+$)', cwd).group(0) == "Resources":
mkFldr(cwd[0:-27] + fldr) #this is a try except function
sanExt(extPath, str(cwd[0:-27] + fldr + "/" + extName + "_san.csv"))
else:
mkfldr(fldr)
sanExt(extPath, str(cwd + "/" + fldr + "/" + extName + "_san.csv"))
答案 0 :(得分:0)
如果我理解你正确的问题,我会使用类似下面的内容来处理这个问题。 “冻结”部分会根据您是运行脚本还是py2exe / py2app可执行文件来更改行为。
import sys
import os.path
frozen = getattr(sys, 'frozen', '')
if frozen:
MyFolder = os.path.dirname(sys.executable)
else:
Myfolder = os.getcwd()