zoukankan      html  css  js  c++  java
  • [Python]编译错误:编码错误问题(SyntaxError: (unicode error) )

    1 错误信息

    python文件

    1 #coding:utf-8
    2
    3 class Clz:
    4    def func(filePath):
    5    """
    6    func
    7    -----
    8    :param filePath :  like -> D:xxyyzz.txt
    9    """
    
    File "E:/workspace/PyDemo20190618/../Clz.py", line 9
                """
    SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 669-670: truncated xXX escape
    

    2 分析原因

    1. 文件自身编码文件首行声明的编码不一致。

    2. 函数下方的注释区或者文件其它区域(""" ...""") 存在对【含斜下划线,即 转义字符)】的描述,导致python编译器编译时出错。【此点,较为难发现、排除,亦系撰写本博客的本质原因】

    【深层次原因(不完全确定)】在Python中 是转义符,u表示其后是UNICODE编码,在编译阶段,python编译器与正则表达式语法发生冲突。因此,在第9行会报错。

    解决办法1:单斜下划线(转义字符)【】换为双斜下划线【\】

    解决办法2:在字符串前面加个【r】符(rawstring 原生字符串)

    以此避免python与正则表达式语法的冲突。

    3 文献

  • 相关阅读:
    redhat 5 中文乱码
    生成树
    交换机端口模式
    链路聚合
    AP注册
    信息收集
    Python 25 Django跨域请求
    Python 24 Django之csrf中间件
    Python 23 Django基础
    Python 21 Flask(三)第三方组件
  • 原文地址:https://www.cnblogs.com/johnnyzen/p/11258704.html
Copyright © 2011-2022 走看看