运行python文件报SyntaxError unicode error unicodeescape codec can not decode bytes in position 2-3
Hello,大家好。在学习python中运行python文件的时候出现了这样的报错
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
【运行python文件报SyntaxError unicode error unicodeescape codec can not decode bytes in position 2-3】翻译中文就是SyntaxError:(unicode错误)“UnicodeScape”编解码器无法解码位置2-3中的字节:截断\uxxxxxxxxx转义
所以我们就能明白这个错误出自于转义。
举个错误的例子:
如果我要打开一个C盘的一个绝对路径的txt文件,如图
f = open('C:\user\Force\PycharmProjects\pystudy\data.txt','r')
txt = f.read()
print(txt)
就会出现上述的SyntaxError报错。
错误分析:需要在字符中使用特殊字符时,python用反斜杠 ’ \ ’ 转义字符,所以错误案例中的 ’ \ ’ 被用作转义,导致解释器解释文件路径错误。
解决方案:
1、在路径前面加r,即保持字符原始值的意思。保证文件路径的正确。
f = open(r'C:\users\Force\PycharmProjects\pystudy\data.txt','r')
txt = f.read()
print(txt)
2、把单斜杠换成双斜杠
f = open('C:\\users\\Force\\PycharmProjects\\pystudy\data.txt','r')
txt = f.read()
print(txt)
3、换成正斜杠
f = open('C:/users/Force/PycharmProjects/pystudy\data.txt','r')
txt = f.read()
print(txt)
用以上的解决方案就能成功解决啦~~
小朋友第一次写博客,如有错误请多多指正。(? ?_?)?
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- django-前后端交互
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- 如何在Mac中的文件选择框中打开系统隐藏文件夹
- 使用composer自动加载类文件
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- Python(pathlib模块)