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
  • 相关阅读:
    待解决问题集锦
    蓝桥杯--- 历届试题 连号区间数(水题)
    蓝桥杯---历届试题 翻硬币 (水题)
    nyoj 678 最小K个数之和
    hdoj 2 括号配对问题【数组模拟实现+STL实现】
    hdoj 1016 Prime Ring Problem
    nyoj 62 笨小熊
    nyoj 47 过河问题
    nyoj 456 邮票分你一半
    nyoj 171 聪明的kk
  • 原文地址:https://www.cnblogs.com/meilong/p/Python-zhong-de-zi-fu-ji.html
Copyright © 2011-2022 走看看