python文件操作
1,打开文件
打开文件 : open(file,mode = 'r')
file: 操作文件的路径加文件名
mode: 操作文件的模式
打开文件的权限 :
r 读
w 写
a 追加
单纯使用这三种方式打开文件,只拥有一种打开权限,要么读要么写
r+ 读写操作 不创建新文件,文件读写指针在开头
w+ 读写 创建新文件 ,读写指针在开头,如果文件存在则会覆盖这个文件之前的内容
a+ 读写 创建新文件,读写指针在末尾,不会覆盖之前内容
含有写权限在打开一个不存在的文件时,该文件将被创建
2,读文件
1, str = read(num)读取文件放到字符串变量中,其中的num就是读取的字节数,不填为全读,每次读操作之后我们会发 现,我们下次的操作,都是在这一次操作之后,文件读写,共享一i个指针
2,file.seek(offset[,whence])函数,修改访问文件位置
offset :偏移量
whence 从何处偏移,0从文件开头,1从但前开始,2从文件末尾处
需要注意,如果文件已a或a+的模式打开,每次进行写操作时,文件操作标记会自动返回文件末尾。
把文件指针移动到文件开头 sile.seek(0,0)
str = readline()读取一行到一个字符变量中(读到换行符,包括行末标识符,或者文件结束的标志(EOF))
strlist = readlines(size)读取真个文件到字符列表
每次调用readlines(size)函数,会返回大约200MB的数据,而且所返回的必然都是完整的行数据,大多数情况下,返回的数 据字节数会稍微比size指定的值大一点(除最后一次调用readlines(size)函数的时候)。通常情况下,Python会自动将用户 指定的sizehint的值调整成内部缓存大小的整数倍,这个函数内部也就是通过循环调用readline()来实现的。
通过文件迭代器读取文件内容
for str in file :
3,写文件
write('str') : 在文件末尾写入字符串,
该方法在字符串的结尾不加入‘\n’换行符号,并切在成功写入的时候,会提示出写入的字符数。
file.flush(): 把在缓冲区中的内容刷新到磁盘中。
还可以利用file.close()刷新缓冲区。
file.writelines(list_of_string) : 把字符串列表写入文件中