Python 文件读写操作

获取文件对象

file = open('filename', [rwa][b][+]) 默认为只读
file.close() 关闭文件

所有对文件的操作都是从当前指针开始

文件内容读取

open('filename', r) 指针初始位置为0
  • file.read() 将所有内容读取到字符串
  • file.read(n) 读取指定个数字符
  • file.readline() 读一行
  • file.readlines() 逐行读取到一个字符串列表
  • for line in file 逐行读取

文件内容写入

file = open('filename', w) 打开或新建文件,指针初始位置为0

若文件存在,则原内容会被清空,须谨慎使用

  • file.write(‘string’) 返回字符个数
  • file.write(list) 通过字符列表写入
  • file.flush() 将内存中缓存的数据写入磁盘文件中

文件指针的移动

file.seek(n) 移动到第n个字符
file.tell() 返回指针当前位置

文件内容的插入

file = open('filename', a) 打开或新建文件,若文件存在,则文件指针初始位置在文件末尾

以插入方式打开的文件,进行write操作时,无论当前文件指针位置在何处,写入的内容始终会被追加在文件尾部

  • file.write(string)
  • file.write(stringlist)

二进制读写

file = open('filename', rb+) *只能写入二进制字符串*
  • file.write(b ‘test string’)

使用文件存储Python对象

需要使用到的标准模块 pickle
用到的函数,dump(obj), load()

from pickle import dump,load
file = open(filename, 'wb+')
li = [(1,2),{'name': 'tom', 'age': 18},'str']
dump(li,file) //把对象写入文件
file.flush()
file.seek(0) 
obj = load(file) //从文件中读出对象

猜你喜欢

转载自blog.csdn.net/qq_36793147/article/details/79123159