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

    1----字符编码:

        字符编码(英语:Character encoding)、字集码是把字符集中的字符编码为指定集合中某一对象(例如:比特模式、自然数串行、8位组或者电脉冲),以便文本在计算机中存储和通过通信网络的传递。

        常见的例子包括将拉丁字母表编码成摩斯电码和ASCII。其中,ASCII将字母、数字和其它符号编号,并用7比特的二进制来表示这个整数。通常会额外使用一个扩充的比特,以便于以1个字节的方式存储。

        ASCII(pronunciation: 英语发音:/ˈæski/ ASS-kee[1],American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,它主要用于显示现代英语,而其扩展版本EASCII则可以部分支持其他西欧语言,并等同于国际标准ISO/IEC 646。由于万维网使得ASCII广为通用,直到2007年12月,逐渐被Unicode取代

            0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符)

            32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字

            65~90为26个大写英文字母,

            97~122号为26个小写英文字母,其余为一些标点符号、运算符号等

        Unicode(中文:万国码、国际码、统一码、单一码)是计算机科学领域里的一项业界标准。它对世界上大部分的文字系统进行了整理、编码,使得电脑可以用更为简单的方式来呈现和处理文字Unicode至今仍在不断增修,每个新版本都加入更多新的字符。目前最新的版本为7.0.0,已收入超过十万个字符(第十万个字符在2005年获采纳)。Unicode涵盖的数据除了视觉上的字形、编码方法、标准的字符编码外,还包含了字符特性,如大小写字母。

              

        UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,也是一种前缀码。它可以用来表示Unicode标准中的任何字符,且其编码中的第一个字节仍与ASCII兼容,这使得原来处理ASCII字符的软件无须或只须做少部份修改,即可继续使用。因此,它逐渐成为电子邮件、网页及其他存储或发送文字的应用中,优先采用的编码

            python2默认的编码是ascii

    如何避免中文乱码:

    1)使用utf-8编码方案

        #-*-coding:utf-8-*-

        #coding:utf-8  

    2)或者遇到字符(节)串,立刻转化为unicode,不要用str(),直接就用unicode()

        unicode_str=unicode('中文‘,eccoding=‘utf-8’)

        printunicode_str.encode('utf-8')

    3)如果对文件操作,打开文件的时候,最好用codecs.open,替代open(这个后面会讲到,先放在这里)

        

    import codecs
    codecs.open('filename', encoding='utf8')

          

  • 相关阅读:
    [php-src]一个Php扩展的结构
    告别2015,迎来2016
    [JS]应用splice删除多元素时出现的坑
    [Ng]Angular应用点概览
    [MongoDB]Mongodb攻略
    GNU M4
    [Linux]服务管理:RPM包, 源码包
    [Shell]条件判断与流程控制:if, case, for, while, until
    [Shell]字符截取命令:cut, printf, awk, sed
    [Shell]正则表达式与通配符
  • 原文地址:https://www.cnblogs.com/xiaoyoucai/p/6543467.html
Copyright © 2011-2022 走看看