当前位置:   article > 正文

运行python文件报SyntaxError unicode error unicodeescape codec can not decode bytes in position 2-3_syntaxerror: (unicode error) 'unicodeescape' codec

syntaxerror: (unicode error) 'unicodeescape' codec can't decode bytes in pos

Hello,大家好。在学习python中运行python文件的时候出现了这样的报错

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

翻译中文就是SyntaxError:(unicode错误)“UnicodeScape”编解码器无法解码位置2-3中的字节:截断\uxxxxxxxxx转义

所以我们就能明白这个错误出自于转义

举个错误的例子
如果我要打开一个C盘的一个绝对路径的txt文件,如图

f = open('C:\user\Force\PycharmProjects\pystudy\data.txt','r')
txt = f.read()
print(txt)
  • 1
  • 2
  • 3

就会出现上述的SyntaxError报错。

错误分析:需要在字符中使用特殊字符时,python用反斜杠 ’ \ ’ 转义字符,所以错误案例中的 ’ \ ’ 被用作转义,导致解释器解释文件路径错误。

解决方案
1、在路径前面加r,即保持字符原始值的意思。保证文件路径的正确。

f = open(r'C:\users\Force\PycharmProjects\pystudy\data.txt','r')
txt = f.read()
print(txt)
  • 1
  • 2
  • 3

2、把单斜杠换成双斜杠

f = open('C:\\users\\Force\\PycharmProjects\\pystudy\data.txt','r')
txt = f.read()
print(txt)
  • 1
  • 2
  • 3

3、换成正斜杠

f = open('C:/users/Force/PycharmProjects/pystudy\data.txt','r')
txt = f.read()
print(txt)
  • 1
  • 2
  • 3

用以上的解决方案就能成功解决啦~~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/371420
推荐阅读
相关标签
  

闽ICP备14008679号