zoukankan      html  css  js  c++  java
  • Python 字符集

    什么是字符?

    1.在Python中,字符串中的内容都是字符.

    2.什么是字符编码(encode)和字符集(charset)?

    • 计算机只能识别数值,而字符不能识别,为了让计算机能处理字符,必须将字符和数值产生一个映射关系.(即:给某个字符指定一个数值,计算机就用这个数值表示这个字符了.)这个映射关系,称为字符集. 例如: ASCII字符集,gbk字符集,Shift_JIS字符集.
    • 这些字符集通常不互相通用,比如:3000这个数值在gbk中表示一个符号,在其他的字符集中有可能表示的就是完全不同的字符.
    • 为了终止这种混乱的场面,出现了Unicode字符集.
    • Unicode字符集也是一种字符和数值对应的关系表.只不过它里面保存的数值比较多,目前已经达到了一百多万个.已经能表示世界上所有能见到的语言和符号了.

    3.字符编码:将字符集中的数值转换成字节的过程.

    • 但是和ASCII字符集,gbk字符集,Shift_JIS字符集不同的是:
    • Unicode字符集提供了多种实现方案:
    • UTF8,UTF16,UTF32等等.
    • UTF:Unicode Translate
    • Format,Unicode转换格式
    • 其中,UTF16用固定的2个字节表示Unicode字符.
    • UTF32用固定的4个字节表示Unicode字符. 二者都不太常用.

    4.而UTF8是一种变长的编码方案(在互联网领域最常用):

    • 能用一个字节表示的,就用一个字节表示.
    • 表达不了的,用两个字节表示.
    • 实在不行的,用三个字节表示.
    • 还有一些比较少用的,用四个字节表示.
    • 中文一般用三个字节表示.
    • Unicode字符集和UTF8编码对应的关系:
    魏美龍|DevOps Engineer|will_wei_devops@163.com
  • 相关阅读:
    Design Pattern Explained
    StringBuilder or StringBuffer
    Algorithms
    Difference between pages and blocks
    Date Time Calendar
    Math if fun
    Sublime Text
    Java Regex
    Learning C
    跨域通信/跨域上传浅析
  • 原文地址:https://www.cnblogs.com/meilong/p/Python-zhong-de-zi-fu-ji.html
Copyright © 2011-2022 走看看