文件路径、文件打开方式
相对路径:只给出文件名,如:'name.txt'
绝对路径:给出详尽的路径,如:r'D:\Code\Python\name.txt'
打开方式
'r' 以只读方式代开文件(默认)
'w' 以写入的方式打开文件,会覆盖已存在的文件
‘x’ 如果文件已经存在,使用此模式打开将引发异常
‘a’ 以写入模式打开,如果文件存在,则在末尾追加写入
‘b’ 以二进制模式打开文件
‘t’ 以文本模式打开(默认)
‘+’ 可读写模式(可添加到其他模式中使用)
‘U’ 通用换行符支持
open、close、with
open(file, mode='r')
用于打开文件,返回一个文件对象
用法:file = open(file_name, mode)
close(self, /)
关闭打开的文件
用法:file.close()
使用with语句Python会在合适的时候自动关闭文件
用法:
with open(file_name, mode) as file:
pass
read、readline、readlines
read(self, size=-1, /)
读取所有(包括换行符),返回字符串,size控制读取字符个数
readline(self, size=-1, /)
读取一行(包括换行符),返回字符串,size控制读取的字符数,默认读取一行所有字符
readlines(self, hint=-1, /)
读取多行(包括换行符),返回一个列表,hint控制读取的行数,默认读取所有行
write、writelines
write(self, text, /)
写入文本
writelines(self, lines, /)
写入多行文本,以列表形式输入,不会自动添加换行
seek、tell
seek(self, cookie, whence=0, /)
用于改变流位置,返回改变后流的位置
whence取值如下:
0——流开始(默认);偏移量应为零或正
1——当前流位置;偏移量可以是负的
2——流结束;偏移量通常是负的
常用用法:
使用file.seek(0)把文件流重置到开始位置
使用file.seek(0,2)把文件流置到文件末尾位置
使用position = file.seek(0,1)获取文件流当前位置
tell(self, /)
用于得到当前流在文件中的位置
pickle模块
pickle.dump(obj, file)
用于把数据文件存入对象
用法:
obj = [1, 2, 3, 4, 5]
with open(file_name, 'w') as file:
pickle.dump(obj, file)
pickle.load(file)
用于把文件内容导出
用法:
with open(file_name, 'r') as file:
obj = pickle.load(file)
json模块
json.dump(obj, fp)
用于把数据对象存入文件
用法:
obj = [1, 2, 3, 4, 5]
with open(file_name, 'w') as file:
json.dump(obj, file)
json.load(fp)
用于把文件内容导出
用法:
with open(file_name, 'r') as file:
obj = json.load(file)