zoukankan      html  css  js  c++  java
  • python中的字符编码

    1. str的decode与encode成员方法
    str.decode : other encoding  -> utf16
    str.encode : utf16 -> other encoding
    2. 文件编码与字符串在内存中的表示形式

    文件编码同字符串在内存中的编码相同。例如:,程序运行后,结果如下:

    1 #coding:utf8 

    2

    3 u1 = '你好'.decode('gbk')
    4 u2 = '你好'.decode('utf8')
    5 print u1
    6 print u2

    文件编码为 utf8

    浣犲ソ
    你好
    注意:
    1. 文件时utf8编码;
    2. u1以gbk解码,结果是乱码;
    3. 而u2是以utf8解码,结果正确。

    3. 强大的codecs模块
    codecs是encoders和decoders的缩写。
    这个模块的强大之处在于它提供了流的方式来处理字符串编码,当处理的数据很多时,这种方式很有用。
    你可以使用IncrementalEncoder和IncrementalDecoder,但是强烈建议使用StreamReader和StreamWriter,因为使用它们会大大简化你的代码。

    例如,有一个test.txt的文件,它的编码为gbk,现在我需要将它的编码转换为utf8,可以编写如下代码:

      

     1 #coding:utf8

     2 import codecs
     3 
     4 # 打开文件
     5 fin = open('test.txt''r')
     6 fout = open('utf8.txt''w')
     7 
     8 # 获取 StreamReader
     9 reader = codecs.getreader('gbk')(fin)
    10 # 获取 StreamWriter
    11 writer = codecs.getwriter('utf8')(fout)
    12 
    13 din = reader.read(10)
    14 while din:
    15     writer.write(din)
    16     din = reader.read(10)

  • 相关阅读:
    centos使用--排查服务是否可用
    centos使用--开机启动
    centos使用--防火墙
    centos使用--软件启动关闭等操作的命令
    centos使用--supervisor使用
    centos使用--centos7.3配置LNMP
    centos使用--vim配置和推荐插件使用
    centos使用--ssh登陆
    HTML5 sessionStorage会话存储
    localStorage使用
  • 原文地址:https://www.cnblogs.com/hdtianfu/p/2943767.html
Copyright © 2011-2022 走看看