1

我已经通过py2exe.

如果我在它的 dist 文件夹中运行这个可执行文件,它运行得很好。

该程序需要访问文件夹中的dist文件(带有参考数据的 txt 文件)。

如果我在桌面上创建该可执行文件的快捷方式,程序会运行但无法正常工作。似乎程序运行的文件夹是快捷方式所在的文件夹,而不是 exe 所在的文件夹。因此,它无法找到这些带有参考数据的 txt 文件。

在我的代码中,我将这些 txt 文件称为:

ref_correction = np.matrix(np.genfromtxt( 'Reference_Data.txt' ))

我怎样才能解决这个问题?

4

2 回答 2

1

您可以使用__file__变量(其中包含您当前正在编写代码的 Python 文件的路径)来构造数据文件的路径。您可以将其扩展为绝对路径(通过使用os.path.abspath()),然后仅获取该路径的目录部分,并将其与数据文件的名称连接起来。

于 2013-02-25T10:42:37.463 回答
0

改用这个:

path = os.getcwd()   #Where the 'exe' file is stored 

otherpath = os.path.join(path, '../Folder/SubFolder/') #Creates a new path

创建“.exe”文件时,“__ 文件 __”不再适用于路径,因此您需要使用上面的行获取当前工作目录。这会将您的路径更新到“.exe”和所有必需文件当前所在的目录。

于 2014-01-04T00:13:49.493 回答