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

    字符编码

    三大核心硬件

    1. ​ cpu
    2. ​ 内存
    3. ​ 硬盘

    python解释器执行文件的流程:

    1. 将python解释器的代码由硬盘读到内存
    2. 将py文件以普通文本文件的格式由硬盘读到内存
    3. Python解释器去内存中读取py文件的数据
    4. 识别python语法,执行相应操作

    ASCII码表 美国

    ​ 用八位二进制来表示一个字符 (所有英文字符+符号一共大概128左右)

    最多表示255位

    八位二进制 = 8bit

    1024 bytes = 1KB

    1024KB= 1MB

    1024MB= 1GB

    1024GB = 1TB

    1024TB = 1PB

    GBK(中国)

    用2个bytes 来代表一个字符,兼容英文字符

    万能码:

    ​ unicode

    为了兼容所有的国家的字符,生成Unicode

    ​ 所有字符都用2bytes

    缺点:1、占用内存空间

    ​ 2、io次数增加,程序运行速度变慢(最致命)

    utf-8:

    utf-8只与unicode 有对应关系

    ​ 所有的英文字符用1个bytes表示

    ​ 所有的中文字符用3个bytes表示

    重点:

    1. 用户无论输入什么字符,存入内存,都可以兼容

    2. 硬盘中无论是什么编码,读到内存,都可以兼容unicode

      数据传输时,优先以自己的本国字符编码进行传递

    必须掌握:

    (内存)unicode 二进制字符>>> 编码(encode) >>> (硬盘)utf -8 二进制字符

    (硬盘)utf-8 二进制字符 >>> 解码(decode) >>> (内存) unicode 二进制字符

    保证不乱码核心

    ## 用什么编码存的数据,就用什么编码取
    

    python 2:

    默认字符编码是ascii码

    python3:

    默认字符编码utf - 8

    pycharm 默认字符编码是:utf-8

    windows操作系统默认字符编码:gbk (中国地区)

  • 相关阅读:
    ASP.NET MVC应用程序更新相关数据
    HTML5 教程
    Nginx+Tomcat+Keepalived+Memcache 负载均衡动静分离技术
    Bootstrap 模态框
    Routing(路由) & Multiple Views(多个视图) step 7
    构建日均千万PV Web站点1
    基础模块
    Visual Studio 换颜色
    动手实现Expression翻译器1
    ASP.NET SignalR 2.0入门指南
  • 原文地址:https://www.cnblogs.com/127-2933/p/11867906.html
Copyright © 2011-2022 走看看