Python学习:Windows路径中的转义字符 \ 问题解决办法 | 您所在的位置:网站首页 › 标识中的字符无效怎么回事 › Python学习:Windows路径中的转义字符 \ 问题解决办法 |
2020/7/16 更新:
增加解决方法 3:在路径字符串前加 r'filepath' 例子代码: path = r"D:\PixivWallpaper\catavento.png" print('path:'+path)输出结果 D:\PixivWallpaper\catavento.png加 r 的作用是把转义字符 \ 变成普通字符。 1.前言在学习PyQt5时,要进行图片文件读取,然后我就想先找一个文件来测试,直接在Windows文件管理器复制了个文件路径,但读取失败了。后面才发现复制的地址和用 QFileDialog 控件读取的路径书写格式不一样,在把复制的路径改成QFileDialog读取的格式后成功读取了图片文件。 进而才想起在python中 \ 是转义字符,所以在读取文件才出错。 "D:\PixivWallpaper\catavento.png" (windows格式) "D:/PixivWallpaper/catavento.png" (Linux格式,也就是QFileDialog 控件的格式 ) 2.解决代码与分析 path = "D:\PixivWallpaper\catavento.png" print('path:'+path) #方法1:'\'-->'/' path_1 = '/'.join(path.split('\\')) print('path_1:'+path_1) #方法2:'\'-->'\\' path_2 = '\\\\'.join(path.split('\\')) print('path_2:'+path_2) 运行结果 path:D:\PixivWallpaper\catavento.png path_1:D:/PixivWallpaper/catavento.png path_2:D:\\PixivWallpaper\\catavento.png 有结果可以看出成功转换了Windows路径。
其中 split() 是字符串分割函数,例如他会把代码中的"D:\PixivWallpaper\catavento.png" 以‘\’为分割符f分成 ("D:" ,"PixivWallpaper" ,"catavento.png") 三个字符串的列表 而 xx.join() 是字符串合并函数,xx是在合并字符串之间想加上的字符,例如 ','.join(("D:" ,"PixivWallpaper" ,"catavento.png")) 合并成:"D:,PixivWallpaper,catavento.png"
|
CopyRight 2018-2019 实验室设备网 版权所有 |