zoukankan      html  css  js  c++  java
  • python编码问题

    python编码问题:

      type(body)=unicode,type(url)=unicode

      eval(body)=dict type(url.encode)=str

      字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。

      decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。

      encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。

      因此,转码的时候一定要先搞明白,字符串str是什么编码,然后decode成unicode,然后再encode成其他编码。

     

    编码集coedcs:

      python写入文件默认使用ANSI编码,当写入字符含有中文时,保存的文件格式自动设置为UTF-8,系统上传文件格式不是ANSI时显示乱码,为了解决这个问题,使用codecs设置保存文件的编码格式。

      工作原理:首先把保存的数据解码程unicode格式,然后对应相应的编码,写入文件即可

    文本格式对应表

    ANSI---->GBK

    UTF-8---->UTF-8

    Unicode---->UTF-16

    #保存ANSI格式

    import codecs
    str_str="测试"
    fh = codecs.open("xxx.txt","w","utf-8")
    fh.write(str_str)
    fh.close()

    json:

    json.dumps()编码

    json.loads()解码 

     

      

     
     
     
     
  • 相关阅读:
    函数
    拉取代码到本地
    逻辑位运算符 以及 布尔运算符&&、||
    JS中substr与substring的区别
    ? :和!:的用法含义及es6语法...
    JS中attribute和property的区别
    并发、并行的理解
    斑鸠云商小程序记住账号和密码
    js中的foreach用法
    指针与数组
  • 原文地址:https://www.cnblogs.com/xiatian09/p/11205878.html
Copyright © 2011-2022 走看看