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

    1.单位换算:
    1Bytes=8bit
    1KB=1024Bytes
    1MB=1024KB
    1GB=1024MB
    1TB=1024GB
     
    2.发展史:
    阶段一:
    ASCII:
    一个bytes代表一个字符(英文符/键盘上的所有其他字符)
    1bytes=8bit   
     
    阶段二:中国人定制了GBK:
    2bytes代表一个字符
     
    阶段三:unicode
    2bytes代表一个字符
    UTF-8:
    英文1bytes代表一字符;中文是3bytes代表一个字符
     
    unicode---->优点:字符转换为二进制的速度快,缺点:占用空间大
    utf-8---->优点:精准,节省空间;缺点:转换速度慢
     
    3.内存中使用的编码是unicode,用空间换时间,保证尽可能快的运行
      硬盘中使用的编码是utf-8,网络i/o延迟或磁盘i/o延迟要大于utf-8转换延迟。
     
    4.字符编码的使用:
    文件以什么编码保存就用什么编码读取,不然很容易乱码
    乱码分两种情况:
     1).保存时乱码:文件中有多国文字,以单一的编码存储就会产生乱码。例:文件中有英文,中文,韩文,单一的用shift jis,存储时就会出错。
     2).读取时乱码:用utf-8保存,用gbk读取就会乱码
     
    5.程序的执行:
      1).启动python解释器
      2).python解释器相当于文本编辑器,负责打开文件。即讲文件读取到内存。(python解释器会读取文件的第一行内容,#coding:utf-8,来决定以什么编码格式来读入内存,这一行就是来设定python解释器这个软件的编码使用的编码格式
       python2:默认ASCII   python3:默认utf-8
      3).读取已经加载到内存的代码(unicode编码的二进制),然后执行
     
    6.python2与python3的区别:
     1.)python2中有两种字符串类型:str&unicode,str=bytes.
        
        str:是编码后到bytes,只能decode('gbk/utf-8')回字符串
        unicode:unicode类型的字符串是以unicode的格式存放到新的内存空间,只能encode('')回字符串
    2).python3有两种字符串类型:str&bytes,默认str
       str是unicode----->encode
       bytes是bytes---->encode
     
     
     
     
  • 相关阅读:
    Android-PullToRefresh 下拉刷新增加setOnItemLongClickListener
    【453】周志华-机器学习-读书笔记
    【452】pandas筛选出表中满足另一个表所有条件的数据
    【451】python 同一行打印进度条
    【449】Win10 蓝牙耳机链接没有声音
    HBase(一)HBase入门简介
    kafka可视化客户端工具(Kafka Tool)的基本使用
    Kafka(五)Kafka的API操作和拦截器
    Kafka(四)Kafka在zookeeper中的存储
    Kafka(三)Kafka的高可用与生产消费过程解析
  • 原文地址:https://www.cnblogs.com/mona524/p/6994375.html
Copyright © 2011-2022 走看看