文件操作方法
1 读
with open(r'文件路径', 'r(只读模式)', encoding='utf8(万国表)') as f(参数):
print(f.read()) #一次性读取文件所有的内容
print(f.readline()) #m每次只读取文件一行内容
print(f.readlines()) #读取文件所有的内容 组织成列表,每个元素是文件的每行内容
print(f.readable()) #判断当前文件是否具备读的能力
2写
with open(r'文件路径', 'w(只写模式)', encoding='utf8(万国表)') as f(参数):
f.write('需要往文件内容写入文本的内容')
f.write('123') #写入的内容必须是字符串类型
f.writelines(['jason(参数)', 'kevin(参数)','tony(参数)']) #可以将列表中多个字符串元素全部写入
print(f.writable()) #Ture #判断当前文件是否具备写的能力
print(f.readable()) #False #判断当前文件是否具备读的能力
f.flush #直接将内存内的文件数据刷到硬盘 相当于ctrl+s
文件优化操作
with open(r'文件路径', 'r(只读模式)', encoding='utf8(万国表)') as f(参数):
print(f.raed()) #一次性获取读取文件所有的内容
print(f.raed()) #一次性获取读取文件所有的内容
print(f.raed()) #一次性获取读取文件所有的内容
"""
1.一次性读完之后,光标停留在了文件末尾,无法再次读取内容
2.该方法在读取大文件的时候,可能会造成内存溢出的情况
解决上述策略就是逐行读取文件内容
"""
for line in f: #文件变量名 f 支持 for 循环,相当于一行行读取文件内容
print(line)
"""
以后涉及到多行文件内容的情况一般都是采用for循环读取
"""
文件操作模式
t 文本模式
1.默认的模式
r w a >>> rt wt at
2.该模式所有操作都是以字符串基本单位(文本)
3.该模式必须要指定encoding参数
4.该模式只能操作文本文件
b 二进制模式
1.该模式可以操作任意类型的文件
2.该模式所有操作都是以bytes类型(二进制)基本单位
3.该模式不需要指定encoding参数
rb wb ab