首页 > 解决方案 > 如何用python在windows中打开文件?

问题描述

我通过 sys.argv 使用斜杠而不是反斜杠传递文件名。我正在使用 os.path.normpath 和 os.path.join 但是在尝试打开文件时出现异常,没有这样的文件或目录:并且路径带有双反斜杠。我正在寻找解决方案几个小时,但没有任何效果。

我已经尝试了我可以在谷歌上找到的所有教程,但我一直遇到同样的问题。我只是不断收到双反斜杠。我也尝试过像示例中那样对路径进行硬编码。

filepath = os.path.normpath(os.path.join('D:/dir1/dir2/dir3', 'myfile.txt'))
try:
    my_file = open(filepath, 'w+')
except Exception as e:
    print('Cannot create/open file w+!\n{}'.format(e))

我需要能够打开文件。

标签: pythonwindowspathos.path

解决方案


在 python 脚本中,它适用于:

file_path =  os.path.join(os.path.abspath(os.path.dirname(__file__)), 'config.ini')

但是,如果我需要使用 py2exe 构建一个程序,则__file__它不起作用,我使用:

file_path =  os.path.join(os.path.abspath(os.path.dirname(sys.argv[0])), 'config.ini')

希望这对某人有所帮助。


推荐阅读