zoukankan      html  css  js  c++  java
  • Python官方文档使用笔记

    codecs --- 编解码器注册和相关基类

      这个模块定义了标准Python编解码器(编码器和解码器)的基类,并提供接口用来访问内部的Python编解码器注册表,该注册表负责管理编解码器和错误处理的查找过程。大多数标准编解码器都属于文本编码,它们可将文本编码为字节串,但也提供了一些编解码器可将文本编码为文本,以及字节串编码为字节串。自定义编解码器可以在任意类型间进行编码和解码,但某些模块特性仅适用于文本编码或将数据编码为字节串的编解码器。

      本模块提供了以下常量,适用于读取和写入依赖于平台的文件:

      codecs.BOM_UTF8

      这些常量定义了多种字节序列,即一些编码格式的Unicode字节顺序标记(BOM)。它们在UTF-16和UTF-32数据流种被用以指明所使用的字节顺序,并在UTF-8种被用作Unicode签名。BOM_UTF16是BOM_UTF16_BE或BOM_UTF16_LE,具体取决于平台的本机字节顺序,BOM是BOM_UTF16的别名,BOM_LE是BOM_UTF16_LE的别名,BOM_BE是BOM_UTF16_BE的别名。其他序列则表示UTF_8和UTF-32编码格式中的BOM。

      应用举例:

      编译过程中报错 65279

      这是因为代码中采用utf-8有bom的编码格式。bom其实就是在文件的开头,插入了3bit的bom头。‘xefxbbxbf’

    import os
    import codecs
    import configparser
    
    proDir =os.path.split(os.path.realpath(__file__))[0]
    configPath = os.path.join(porDir, "config.ini")
    
    class ReadConfig:
        def __init__(self):
            fd = open(configPath)
            data = fd.read()
    
            # remove BOM
            if data[:3] == codecs.BOM_UTF8:
                data = data[3:]
                file = codes.open(configPaht,"w")
                file.write(data)
                file.close()
            fd.close()
    View Code
  • 相关阅读:
    aws亚马逊配置 https,操作步骤记录
    八年phper的高级工程师面试之路八年phper的高级工程师面试之路
    laravel 获取目录下的所有目录Storage::directories
    Docker 入门看这一篇就够了,万字详解!
    PHP 引用是个坑,请慎用
    php面试常问方法汇总
    注册、登录和 token 的安全之道
    分享一下最近的面试题,都是大厂
    Xpath2
    ActiveX控件的实现
  • 原文地址:https://www.cnblogs.com/susanhonly/p/11590435.html
Copyright © 2011-2022 走看看