我终于启动并运行了 PyInstaller。到目前为止看起来不错,我可以创建一个 exe,对 exe 所在目录中的文件进行一些计算。所以我只需将 exe 复制到包含我需要处理的文件的文件夹中,然后双击 exe(Windows 7)。
但是如果我只是将我的文件拖放到上面然后它会计算那些文件 _ ___ ,是否有可能制作一个 .exe ?
我终于启动并运行了 PyInstaller。到目前为止看起来不错,我可以创建一个 exe,对 exe 所在目录中的文件进行一些计算。所以我只需将 exe 复制到包含我需要处理的文件的文件夹中,然后双击 exe(Windows 7)。
但是如果我只是将我的文件拖放到上面然后它会计算那些文件 _ ___ ,是否有可能制作一个 .exe ?
迟到的答案 (5Y),但如果您将文件放入使用exe
创建的文件中pyinstaller
,sys.argv
将收到一个list
包含所有拖动文件的路径的文件。
第一项 ( [0]
) 是 的路径exe
,即:
import sys
print(sys.argv)
['C:/name_of.exe', 'C:/the_file_dragged1', , 'C:/the_file_dragged2']
有一种简单的方法可以查看您放置在可执行文件上的文件是如何处理的:从具有此类内容的文件构建 exe:
import sys
def __main__():
with open("parameters.log", "ab") as f:
f.write(str(sys.argv))
将它与您拖放的一个或多个文件一起使用并观察parameters.log
: 您应该发现对于每个文件,其绝对路径作为参数传递。n
该文件的路径将位于sys.argv[n]
.
这实际上可以推广到任何可执行文件。