python SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: trunca

来源:互联网 发布:php 调用setcookie 编辑:程序博客网 时间:2024/05/19 17:51

这个是笔者在通过绝对路径读取文件时出现的错误,笔者使用的命令如下

file = open('C:\Users\Wudl\Desktop\pi_digits1.txt','r')

结果出现错误

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

通过查找问题,发现\在python中是转义字符

百科:转义字符—所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加”\”来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。

因此是文件中的\被当成转义字符导致的错误,两种方法修改
1)在路径前加r,r的作用是防止将\当成转义字符,而是将r之后的\都当成普通字符\

file = open(r'C:\Users\Wudl\Desktop\pi_digits1.txt','r')

2)使用\代替\

file = open('C:\\Users\\Wudl\\Desktop\\pi_digits1.txt','r')

3)使用/代替\

file = open('C:/Users/Wudl/Desktop/pi_digits1.txt','r')
阅读全文
0 0