一、文件打开模式:open(文件路径,打开方式)
打开方式 | 执行操作 |
'r' | 以只读方式打开文件(若不填写打开方式,则默认是只读方式) |
'w' | 以写入的方式打开文件,会覆盖已存在的文件 |
'x' | 如果文件已经存在,使用此方式打开将引发异常 |
'a' | 以附加方式打开,如果文件存在,则在末尾追加写入 |
'b' | 以二进制模式打开文件 |
't' | 以文本模式打开(默认) |
'+' | 可读写模式(可添加到其他模式中使用) |
'U' | 通用换行符支持 |
with open('E:\\Pycharm\\PycharmProjects\\untitled\\test_files\\test1.txt','w') as f:
f.write('i love you')
二、文件对象方法
文件对象方法 | 执行操作 |
f.close() | 关闭文件 |
f.read([size=-1]) | 从文件读取size个字符,当未给定size或给定负值的时候,读取剩余的所有字符,然后作为字符串返回,到达文件末尾会返回一个空字符串,显示出一个空行,可以用rstrip()删除空行 |
f.readline([size=-1]) | 从文件中读取并返回一行(包括行结束符),如果有size有定义则返回size个字符 |
f.write(str) | 将字符串str写入文件,不会在文本末尾添加换行符,需要手动添加 |
f.writelines(seq) | 向文件写入字符串序列seq,seq应该是一个返回字符串的可迭代对象 |
f.seek(offset, from) | 在文件中移动文件指针,从from(0代表文件起始位置,1代表当前位置,2代表文件末尾)偏移offset个字节 |
f.tell() | 返回当前在文件中的位置 |
f.truncate([size=file.tell()]) | 截取文件到size个字节,默认是截取到文件指针当前位置 |
注意:
1.在读取或写入文件的时候,只能以字符串的形式,所以要强制转换
2.若读取文件的时候,出现空格,换行等格式,想删掉的话,则用strip()(移除头和尾的空格,或者rstrip()(移除右侧空格)
3.关键字with在不需要访问文件的时候将文件关闭,这样可以不用close()
三、逐行读入的几种方法:
with open('E:\\Pycharm\\PycharmProjects\\untitled\\test_files\\test1.txt') as f:
for line in f:
print(line.rstrip())
with open('E:\\Pycharm\\PycharmProjects\\untitled\\test_files\\test1.txt') as f:
lines=f.readlines()
for line in lines:
print(line.rstrip())
#将文件存储到列表,再按行读取