zoukankan      html  css  js  c++  java
  • DAY7学习笔记

      字符编码

        什么是字符编码

          字符编码表:人类的字符相对应的数字,二进制。

          ASCII码:只能识别英文字符,1英文字符为1=8bit。(用8个二进制bit(比特位)位表示一个英文字符)

          GBK:只能识别汉字与英文,1汉字=16bit(Shift_JIS日本字符编码)(Euc_kr韩国字符编码)

          Unicode:能识别万国字符,1字符=16bit=2Bytes。

          utf-8:是Unicode的转换格式,1个英文字符=1Bytes 1汉字=3Bytes。

          重点理论:

            1.编码与解码:

              字符----编码---->unicode的二进制----编码---->GBK的二进制

              GBK的二进制----解码---->unicode的二进制----解码---->字符

            2.解决乱码问题的核心法则:

              字符用什么编码格式编码,就应该用什么编码格式进行解码。

            3.python解释器默认的字符编码:

              python2为ASCII,python3为UTF-8。(可以通过更改python解释器默认使用的字符编码,在文件首行利用“ #coding:文件所需字符编码 ”。)

              在python2中可以在字符串前加上u,来让其存成unicode,python3则默认为此。

          关于字符编码的操作:

            1.编写python文件,首行应添加文件头。

            2.用python2写程序,定义字符串时,应加前缀u。

            3.python3中的字符串都是unicode编码的,python3的字符串encode之后可以得到bytes类型。

        为何字符要编码

          人类与计算机打交道用的是人的字符,而计算机无法识别人的字符,只能识别二进制,所以必须将人类的字符编码编译成计算机能识别的二进制数。

        如何用字符编码

          编写时,首行输入文件头,输入输出时已UTF-8为编码类型。

      文件处理

        什么是文件处理

          文件是操作系统提供给用户/应用程序的一种虚拟单位,该虚拟单位直接映射的是硬盘空间。

        为何要处理文件

          用户/应用程序直接操作文件(读/写)就被系统转换成具体的硬盘操作,从而实现用户/应用程序将内存中的数据永久保存到磁盘中。

        如何用文件

          文件处理的三个步骤:

            文件对象(应用程序的内存资源)对应操作系统打开的文件(操作系统的内存资源)

            读取文件中的数据

            向操作系统发送信号,让操作系统关闭打开的文件,从未回收操作系统的资源。

          文件打开模式:r(默认的,只读文件,在文件不存在时则报错,如果文件存在则文件指针跳到文件的开头)、w、a

          操作文件内容的模式:t(默认的,操作文件内容都是以字符串为单位,会自动帮我们解码,必须指定encoding参数

                    b(操作文件内容都是以Bytes(二进制)为单位,硬盘中存的时什么就取出什么,一定不能指定encoding参数)

                    +

            总结:t模式只适用于文本文件,而b模式可以用于任意文件。

          with的使用:上下文管理(读写文件操作):with open(r'c.txt',mode='r',encoding='utf-8') as f,open(r'b.txt',mode='r',encoding='utf-8') as f1:

                循环读文件内容的方法:with open(r'c.txt',mode='rt',encoding='utf-8') as f:

                             for line in f:

                              print(line,end='')

  • 相关阅读:
    JS校验 if (! temp_var) {} //拦截 ''和 undefined
    17 JQuery高级----学习笔记
    16 JQuery---JavaScript框架
    15 Filter过滤器和Listener监听器
    14 用户信息展示综合案例
    13 JSP、MVC开发模式、EL表达式和JSPL标签+软件设计架构---学习笔记
    12 Cookie、Session和JSP基础
    11 Reponse对象+ServletContext对象
    10 Servlet+Http+Request对象
    09 Servlet相关知识点---学习笔记
  • 原文地址:https://www.cnblogs.com/lipengjia/p/9675841.html
Copyright © 2011-2022 走看看