记:转义问题DeprecationWarning: invalid escape sequence '\l'

项目运行过程中遇见的warnning 问题:

..allure-pytest/utils.py: DeprecationWarning: invalid escape sequence '\l'
return name.encode('ascii', 'backslashreplace').decode('unicode_escape')

 

找到位置:

 

 

 

 分析:

产生的警告原因,是因为存在文件路径这样写的:  open(D:\pro\Pictures\01.txt')

网上查到原因:

window 读取文件可以用 \,但是在字符串中 \ 是被当作转义字符来使用的   

所以’d:\01a.txt’会被转义成’d:\01.txt’, 这是正确路径所以不会报错。
但  'D:\pro\Pictures\01.txt'    经过转义之后可能就找不到路径的资源了,例如 \t  可能就转义成tab键了。

解决办法
python在描述路径时可以有多种方式,常见的三种如下:

方式一:   双斜杠,转义的方式 'd:\\ 01.txt'
方式二:   显式声明字符串不用转义     'd: r\ 01.txt'
方式三:  反斜杠,同Linux的路径    'd:/ 01.txt'

最终:使用方式三 成功解决问题!

posted on 2022-05-05 16:22  QiKa  阅读(784)  评论(0编辑  收藏  举报