文件操作
(1)打开文件
1 f = open("temp.txt", 'r') #只读方式打开,读取的内容为字符串 2 # f = open("temp.txt", 'w') #只写方式打开,且先清空文件 3 # f = open("temp.txt", 'a') #追加写 4 # f = open("temp.txt", 'x') #python3新加的方式,如果文件存在则报错,不存在则创建并写 5 # f = open("temp.txt", 'rb') #以bytes格式读文件内容,读取的内容为bytes类型 6 # f = open("temp.txt", 'wb') #以bytes格式写文件,写入的内容必须为bytes类型 7 8 # '+' 表示可以同时读写某个文件 9 # r+ 推荐使用,最常用的方式 10 # w+ 先清空 11 # x+ 12 # a+ 与r+的区别在于读取后指针的位置指向文件末尾,因此使得操作tell()时受限制
(2)操作文件
1 f.seek(1) #将文件的指针位置指向1,并且在写的时候覆盖后面的内容,指针位置的计算总是以字节计算,有中文字符时会出现乱码 2 f.tell() #获取当前文件指针位置,位置按字节计算 3 data = f.read() #默认无参数,读全部 4 f.write() #写文件 5 f.writelines() #向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符 6 f.flush() #将缓冲区文件内容写入硬盘 7 f.readline() #读取一行 8 f.readlines() #读取所有行并返回列表,若给定sizeint>0,返回总和大约为sizeint字节的行, 实际读取值可能比sizhint较大, 9 # 因为需要填充缓冲区。 10 f.truncate() #指针位置之后的内容清空 11 #for循环遍历文件行 12 for line in f: 13 print(line)
(3)关闭文件
1 #方法1 2 f.close() 3 #方法2(推荐使用的方法): 4 with open('temp.txt', 'r+') as f: 5 pass