教你学习: Python-100-Days-11 文件与异常

教你学习: Python-100-Days-11 文件与异常

本项目是参考项目内容,进行个人理解,和原有项目有出入,如想了解详情,请自行百度去搜索项目

 

文件的读取是我们平时经常遇到的事,我们打开电脑往txt里没写今天的日记,改天打开文件查看我们之前记录的,这个过程就是文件的读写操作。

 

 

  1. 提问我们文件的读写一种分几步:

  1. 我们打开txt,写入Hello World

  2. Hello Word(格式字符串,我们之前介绍过) 变成成为 Byte[](字节数组,字节可以理解为快递盒,不同大小的内容,放在不同大小的快递盒里)

  3. Byte[] 存入到 写入的 Buffer(缓冲器,可以理解为快递站),

  4. Buffer 将我们的快递,放到仓库(U盘,硬盘等)里。

  5. 读的buffer[]读取内容 ,我们另一个快递公司,把快递从仓库放到自己的快递站里。

6) 快递员在把包裹,发给我们,放到我们家里(显示器)

7) 显示器会根据我们包裹的种类,显示给我们看(文本,图片,视频,压缩包)

 

在Python中实现文件的读写操作其实非常简单,通过Python内置的open函数,我们可以指定文件名、操作模式、编码信息等来获得操作文件的对象,接下来就可以对文件进行读写操作了。这里所说的操作模式是指要打开什么样的文件(字符文件还是二进制文件)以及做什么样的操作(读、写还是追加),具体的如下表所示。

教你学习: Python-100-Days-11 文件与异常

 

2、常见文件格式的读写操作

 

读取文本文件时,需要在使用open函数时指定好带路径的文件名(可以使用相对路径或绝对路径)并将文件模式设置为'r'(如果不指定,默认值也是'r'),然后通过encoding参数指定编码(如果不指定,默认值是None,那么在读取文件时使用的是操作系统默认的编码),如果不能保证保存文件时使用的编码方式与encoding参数指定的编码方式是一致的,那么就可能因无法解码字符而导致读取失败。下面的例子演示了如何读取一个纯文本文件。读取文本文件时,需要在使用open函数时指定好带路径的文件名(可以使用相对路径或绝对路径)并将文件模式设置为'r'(如果不指定,默认值也是'r'),然后通过encoding参数指定编码(如果不指定,默认值是None,那么在读取文件时使用的是操作系统默认的编码),如果不能保证保存文件时使用的编码方式与encoding参数指定的编码方式是一致的,那么就可能因无法解码字符而导致读取失败。下面的例子演示了如何读取一个纯文本文件。

两种读取方式

read() 一次性去取全部内容

readlines() 一行一行读取

1)txt 读写内容

 

教你学习: Python-100-Days-11 文件与异常

教你学习: Python-100-Days-11 文件与异常

 

Json 文件读写内容

1.JSON含义: JSON的全称是”JavaScript Object Notation”...

2.JSON定义: var json = { 键 : 值, 键 : 值, ..... } ...

3.JSON字符串和对象的区别: 字符串:指使用“”双引号或’’单引号包括的字符

教你学习: Python-100-Days-11 文件与异常

教你学习: Python-100-Days-11 文件与异常

 

CSV 文件读写内容

 

教你学习: Python-100-Days-11 文件与异常

 

教你学习: Python-100-Days-11 文件与异常

教你学习: Python-100-Days-11 文件与异常

 

 

二级制文件的读取

教你学习: Python-100-Days-11 文件与异常

 

3、***和反***

 

序列化(serialization)在计算机科学的数据处理中,是指将数据结构或对象状态转换为可以存储或传输的形式,这样在需要的时候能够恢复到原先的状态,而且通过序列化的数据重新获取字节时,可以利用这些字节来产生原始对象的副本(拷贝)。与这个过程相反的动作,即从一系列字节中提取数据结构的操作,就是反序列化(deserialization)”

 

我们的文件txt,csv,json,png,视频 这些都是我们常见的格式类型,计算机在传输的过程中,会将这些内容转换为二进制[byte] ,当我们需要读内容的时候,再讲byte转换成我们要的内容,在转换的过程中,需要告诉计算机这是什么格式的文件,所以就出现了序列化和反序列化,序列化转换为byte,反序列化byte转为对象

 

教你学习: Python-100-Days-11 文件与异常

 

4、异常(Exception)

 

我们的系统,在执行的过程中,会出现各种bug,其中bug的主要组成就是异常。

以我们现在学习的文件举例,细心的同学会发现,我们直接load文件,如果文件不存在我们是读取不到文件的,那么计算机在读取不到文件的时候,就会告诉我们,让我们知道,

这个方式就是Exception

 

为了保证我们计算机,出现问题后不会像法国大罢工一样,动不动不干活了,我们就需要安抚一下,我知道,我会解决的,你继续工作吧。我们就引入了异常处理机制,通过 try-->except --> finally 来处理

 

try:

执行的程序

出现问题,程序要罢工了

except 工资低:

老板说,知道了我给涨工资

except 加班狠:

老板说,知道了,一天工作5个小时

finally 干活去

 

教你学习: Python-100-Days-11 文件与异常

 

 

 

 

教你学习: Python-100-Days-11 文件与异常