文件的作用
使用文件的目的:保存数据存放在磁盘
文件的打开与关闭
<1>打开文件
在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件 open(文件名,访问模式)
下: f = open(‘test.txt’, ‘w’)或者f = open('test.txt', ‘r')
示例如
<2>关闭文件 close( )
文件的读写
<1>写数据(write):使用write()可以完成向文件写入数据
<2>读数据(read)
使用read(num)可以从文件中读取数据,num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有的数据
如果文件中存在中文显示,会出现乱码需要添加encoding='utf-8'
<3>读数据(readlines)
就像read没有参数时一样,readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素
<4> 读数据(readline)
<4>可写(a)
(可写)形式打开文件,如果文件不存在则创建并从头添加写入的内容,存在则原有数据后追加数据,
二进制文件的读写
<1>读数据(rb)
二进制文件的读写
<1>读数据和写文件(rb,wb)
文件与文件夹的相关操作
文件的相关操作 有些时候,需要对文件进行重命名、删除等一些操作,python的os模块中都有这么功能 1. 文件重命名 os模块中的rename()可以完成对文件的重命名操作 rename(需要修改的文件名, 新的文件名) demo代码: import os os.rename("毕业论文.txt", "毕业论文-最终版.txt")
2. 删除文件 os模块中的remove()可以完成对文件的删除操作
remove(待删除的文件名)
import os os.remove("毕业论文.txt")
3. 创建文件夹 import os os.mkdir("张三")
4. 获取当前目录 import os os.getcwd()
异常
什么是异常?
异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。 一般情况下,在Python无法正常处理程序时就会发生一个异常。 异常是Python对象,表示一个错误。 当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行
演示异常
异常处理
作用
捕捉异常可以使用 try/except 语句。try/except 语句用来检测 try 语句块中的错误,从而让 except 语句捕获异常信息并处理。如果你不想在异常发生时结束你的程序,只需在 try 里捕获它。
语法
try:< 语句 > # 运行别的代码except < 名字 > :< 语句 > # 如果在 try 部份引发了 'name' 异常else:< 语句 > # 如果没有异常发生
使用except而不带任何异常类型
你可以不带任何异常类型使用except,如下实例
try :正常的操作except :发生异常,执行这块代码else :如果没有异常执行这块代码

使用except而带多种异常类型
try :异常的操作except ( Exception1 [, Exception2 [,... ExceptionN ]] ] ):发生以上多个异常中的一个,执行这块代码......................else :如果没有异常执行这块代码
try-finally 语句
try-finally 语句无论是否发生异常都将执行最后的代码
语法try :< 语句 >finally :< 语句 > # 退出 try 时总会执行
注意
当在 try 块中抛出一个异常,立即执行 finally 块代码。finally 块中的所有语句执行后,异常被再次触发,并执行 except 块代码。参数的内容不同于异常
异常的传递
触发异常
可以使用raise语句自己触发异常
用户自定义异常
定义
class ShortInputException ( Exception ):def __init__ ( self , length , atleast ):self . length = lengthself . atleast = atleastdef main ():try :s = input ( ' 请输入 --> ' )if len ( s ) < 3 :# raise 引发一个你定义的异常raise ShortInputException ( len ( s ), 3 )except ShortInputException as result : #x 这个变量被绑定到了错误的实例print ( 'ShortInputException: 输入的长度是 %d, 长度至少应是 %d' %( result . length , result . atleast ))else :print ( ' 没有异常发生 ' )main ()