如何解决设置可执行文件的文件夹路径
我编写了一个脚本,该脚本将CSV文件作为输入,对其进行编辑并将其保存到文件夹中。在IDE(Pycharm)中运行时,一切正常,但是当我运行可执行文件(使用Pyinstaller生成)时,脚本崩溃,因为它找不到包含CSV文件的文件夹。如果手动转到终端中的目录并运行可执行文件,则程序将按预期方式运行,但是如果您通过双击图标来运行它,则程序将无法运行。
文件夹结构如下:
Editor ( main folder)
-> Input1 (folder)
|-> contains CSV files to edit
-> Input2 (Folder)
|-> contains CSV files to edit
-> Output (folder)
|-> edited CSV should go here
-> Main (executable)
我尝试使用
path = (sys.path[0])
path = os.path.dirname(os.path.abspath(__file__))
path = os.getcwd()
当我打印路径时,使用IDE可以获取程序存储路径。 但是一旦我创建了可执行文件,打印的路径就与可执行文件的运行位置不匹配,它将给出root / user /
只要输入和输出文件夹在同一目录中,我希望能够从计算机上的任何位置运行可执行文件
我将如何解决此问题? 我正在运行MAC OS X Catalina,Python 3.7
解决方法
我能够使用以下代码解决问题:
path = os.path.dirname(sys.argv[0])
然后可以使用以下方法检查csv文件是否存在:
checkpath = os.path.join(path,"Folder_Name")
if not any(os.path.splitext(f)[1] == '.csv' for f in os.listdir(checkpath)):
print("Folder is empty,Please check Folder contains CSV files")
print("Press Any key to Return to Main Menu")
input()
main()
else:
print("\nStarting Data Editing")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。