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
  • 相关阅读:
    卫星时间同步装置的安装及售后
    windowsU盘重装系统:操作流程
    vue安装正确流程
    win10以太网未识别的网络
    [UnityShader]unity中2D Sprite显示阴影和接受阴影
    [UnityShader]说厌了的遮挡显示
    [Unity]利用Mesh绘制简单的可被遮挡,可以探测的攻击指示器
    ConcurrentHashMap源码解读
    Vector底层原理
    LinkedList集合底层原理
  • 原文地址:https://www.cnblogs.com/susanhonly/p/11590435.html
Copyright © 2011-2022 走看看