• 字符编码


    字符编码:人识别的语言不机器识别的语言转换的媒介
    字符与字节:字符占多少字节,字符串转换
    文件操作:操作硬盘中的一块区域(读写)


    什么是字符编码;
    人类能识别的是字符等高级标识符,电脑只能识别0,1组成的标识符,要完成人与计算机之间的交互,
    一定要一个媒介,进行两种标识符的转化(两种标识符的对应关系)
    对应关系形成的结构称之为:编码表

    乱码:存取数据与读数据采用的编码表不一致

    软件打开文件读取数据的流程;
    1,打开文件
    2,计算机发送一个打开文件的指令,来打开文件
    3.读取数据渲染给用户


    python解释器打开.py文件
    1,打开软件(python解释器)
    2,往计算机发送一个打开文件的指令,来打开文件
    3,逐行解释打开的文件内容(存取编码不一样,无法正常解释,崩溃),将执行结果展示给用户

    解释失败的原因:
    py2默认安asicc来解释文件内容,py3默认按照utf-8来解释文件内容

    文件开头:encoding:编码表
    功能:告诉python解释器按照什么编码来解释文件内容

    unicode与utf-8的关系
    unicode:用2个字节存储汉字,用2个字节来存储英字母。占有空间较多,读取效率极高
    utf-8:是用3-6个字节来储存汉字,用一个字节来存储英字母,占有空间较少,读取效率低
    总结:内存都是按照unicode存储数据,硬盘和cpu采用utf-8来存储数据

    unicode与utf-8采用的是一张unciode编码表,utf-8是unciode编码表体现方式,变长存储数据
    变长优点:(大量数据都是以英文存在,所以utf-8空间更小),传输速度跟快


    unciode三大字符串
    r''原义字符串:不对字符串内存做任何操作
    r'abc abc'=======>>'abc abc'
    u''默认字符串:u''.encode('utf-8')编码d''字节字符串:d''.decode('utf-8')解码

  • 相关阅读:
    css设置兼容的透明样式
    mybatis 使用oracle merge into 语句踩坑实录
    eclipse导入SVN上的Maven多模块项目
    jquery.form插件中动态修改表单数据
    java的几种对象(po,dto,dao等)
    redis面试总结
    前段面试准备
    查询各科成绩最好的学生
    Github访问慢解决办法
    该文件有程序在使用
  • 原文地址:https://www.cnblogs.com/wangtenghui/p/10600314.html
Copyright © 2020-2023  润新知