python学习笔记6(文件和异常)

1.文件编码

编码就是一种规则集合,记录内容和二进制之间进行相互转换的逻辑。

编码技术即:编译的规则,记录了如何将内容翻译成二进制,以及如何将二进制翻译为可识别的内容。

2.文件读取

open(name, mode, encoding)   返回值是文件对象

其中name为文件路径+名称,mode是打开文件的模式由r(只读)、w(写,如果文件本身存在则原有内容被删除,不存在则创建新文件)、a(追加),encoding是编码格式,encoding写的时候要用关键字参数直接指定,encoding="UTF-8"。

file.read(num)  表示要从文件中读取的数据的长度,如果不指定num则读取所有数据。

file.readlines()  表示按照行的方式把整个文件中的内容进行一次性的读取,返回的是一个列表,每一行的数据作为一个元素。

file.readline()  表示读取一行数据。

注意:如果多次调用read、readline,是从上一次读到的结尾地方开始下一次的读取。

for循环读取文件,for line in file:

file.close()   关闭文件。

with open(name, mode, encoding) as f:

  写一系列对文件的操作

好处:不用写close方法,在执行完毕后会自动关闭文件。

3.文件写入

file = open("xxxx","w",encoding="UTF-8")

file.write("内容")  文件写入。

file.flush()   内容更新。

file.close()   注意,如果没有写flush的话,close也会把内容写入文件中的,它内置flush功能。

write会将内容存在缓冲区中,当调用flush的时候内容才会真正写入文件中,这样可以避免频繁操作硬盘导致效率下降。

4.文件的追加

在open中  写成 open("","a",encoding="UTF-8")

注意:文件不存在的话会创建文件,存在的话就在后面继续添加内容。

5、异常和捕获异常(异常处理)

5.1 了解异常

异常就是程序运行的过程中出现了错误。

捕获异常的作用:提前假设某处会出现异常,做好提前准备,当真的出现异常的时候,可以有后续手段。

异常具有传递性

 

5.2基本语法:

  • 捕获所有异常

try: 

  # 可能发生错误的代码

except:

  # 如果出现异常执行的代码

else:

  #没出现异常的时候执行语句,可写可不写else

finally:

  # 有没有异常,都会执行

或者:

try:

except Exception as e:

 

  • 捕获特定的异常:通过as对异常起别名e,e是异常的对象,可以输出e输出异常的信息。

try: 

  print(name)   # 可能发生错误的代码

except NameError as e:

  print("name变量名称未定义异常")   # 如果出现异常执行的代码

 

  • 捕获多个异常:使用元组。

try:

  print(1/0)

except (NameError, ZeroDivisionErrot) as e :

  print("出现异常")

 

posted on 2022-12-04 22:52  201812  阅读(60)  评论(0)    收藏  举报