文件 file
什么是文件:
文件是数据存储的单位
文件通常用来长期存储数据
文件中的数据是以字节为单位进行顺序存储的
文件的操作流程
打开文件 -> 读写文件 -> 关闭文件
任何的操作系统,一个应用程序同时打开文件的数量有最大数限制
文件的打开函数 open
open(file , mode='rt'):用于打开一个文件,返回此文件对应的文件流(stream)对象,如果打开失败,则会触发OSError错误。rt => read text(读文本)
文件关闭方法:
F.close() 关闭,释放系统资源
如:
F = open('D:/123.txt') #打开文件
print('文件打开成功')
F.close() #关闭文件
打开模式 mode:
r 以只读方式打开(默认)
w 以只写方式打开,删除原有文件内容(如果文件不存在,则创建并以只写方式打开)
x 创建一个新文件,并以写模式打开,如果文件存在则会产生 FileExistsError错误
a 以只写方式打开,如果有原文件则追加到文件末尾
b 用二进制打开
t 文本文件模式打开(默认)
+ 为更新内容打开一个磁盘文件(可读可写)
默认模式是 rt
w+b 可实现二进制随机读写,当打开文件时,文件内容将被清空
r+b 以二进制读和更新模式打开文件,打开文件时不会清空文件内容
r+ 以文件模式读和更新模式打开文件,打开文件时不会清空文件内容
文本文件的操作:
默认文件中存储的都为字符串数据,以行为单位进行分隔,在python内部统一用'\n'作为换行进行分隔
对文本文件读写需要用字符串(str)进行数据读取和写入
各种操作系统的换行符:
Linux换行符 '\n'
Windows换行符 '\r\n'
旧的 Macintosh换行符 '\r'
新的 Mac Os 换行符 '\n'
文件流对象常用方法:
F.close() 关闭文件(关闭后文件不能再读写,否则会发生ValueError错误)
F.readline() 读取一行数据,如果到达文件尾,则返回空行
F.readlines(max_chars=-1) 返回每行字符串的列表,max_chars 为最大字符(或字节)数,默认是得到所有行
F.writelines(列表) 写入多行数据,但是不会自动在列表元素间添加换行符
F.flush() 把定稿文件对象的缓存内容写入到磁盘
F.read(size=-1) 从一个文件流中最多读取 size 个字符,默认是读取全部
F.write(字符串) 写一个字符串到文件流中,返回写入的字符数
二进制操作文件方法:
F.tell() 返回当前文件流的绝对位置
F.seek(offset,whence=0) 改变数据流的位置,返回新的绝对位置
F.readable() 判断这个文件是否可读,返回布尔值
F.writable() 判断这个文件是否可写,返回布尔值
F.seekable() 返回这个文件对象是否支持随机定位
F.truncate(pos=None) 剪掉自pos位置之后的数据,返回新的文件长度(字节为单位)
发表评论