您当前的位置:首页 > 文章 > Python读取文件报错:SyntaxE

Python读取文件报错:SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position

作者:袁袁袁袁满 时间:2023-06-03 阅读数:317 人阅读
报错代码

粉丝群一个小伙伴想用pdfplumber读取PDF的信息却发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴),报错代码如下:
import pdfplumber

def pdf(file_path):
    print(file_path)
    with pdfplumber.open(file_path) as pdf:
        for page in pdf.pages:
            text = page.extract_table()
            try:
                for i in text:
                    print(i)
            except Exception as e:
                print(e)

file_path = 'C:\Users\Administrator\Desktop\test.pdf'
pdf(file_path)
运行报错信息如下:SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UXXXXXXXX escape


报错翻译

报错信息翻译:

语法报错:(unicode错误)“UnicodeScape”编解码器无法解码位置2-3中的字节:截断\uxxxxxxx转义

报错原因

报错原因:在windows系统当中读取文件路径可以使用\,但是在python字符串中\有转义的含义,如\t可代表TAB,\n代表换行,所以我们需要采取一些方式使得\不被解读为转义字符。目前有3个解决方案,小伙伴们看下面的解决方法即可!!!

解决方法

在Python中出现:SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UXXXXXXXX escape都可以用以下三种方法解决:

解决方法1:在路径字符串前面加r,即保持字符原始值的意思。(最常用,强烈推荐使用):

file_path = r'C:\Users\Administrator\Desktop\test.pdf'

解决方法2:在每个\前面在加一个斜杠,表示让斜杠保持原始字符意思:

file_path = 'C:\\Users\\Administrator\\Desktop\\test.pdf'

解决方法3:把\全部替换为正斜杠/

file_path = 'C:/Users/Administrator/Desktop/test.pdf'

再次运行代码就成功了:

以上是此问题报错原因的解决方法,欢迎评论区留言讨论是否能解决,如果有用欢迎点赞收藏文章谢谢支持,博主才有动力持续记录遇到的问题!!!
————————————————
版权声明:本文为CSDN博主「袁袁袁袁满」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yuan2019035055/article/details/126368281

本站大部分文章、数据、图片均来自互联网,一切版权均归源网站或源作者所有。

如果侵犯了您的权益请来信告知我们删除。邮箱:1451803763@qq.com