文件的操作:
#读:
f.read() #读取所有内容,光标移动到文件末尾,如果设置长度,按照规定长度读取
f.readline() #读取一行内容,光标移动到第二行首部,一次读一行
f.readlines() #读取每一行内容,存放于列表中,按行一次性全部读出来
#写:
f.write('1111
222
') #针对文本模式的写,需要自己写换行符
f.write('1111
222
'.encode('utf-8')) #针对b模式的写,需要自己写换行符
f.writelines(['333
','444
']) #文件模式
f.writelines([bytes('333
',encoding='utf-8'),'444
'.encode('utf-8')]) #b模式
#了解
f.readable() #文件是否可读
f.writable() #文件是否可读
f.closed #文件是否关闭
f.encoding #如果文件打开模式为b,则没有该属性
f.flush() #立刻将文件内容从内存刷到硬盘
f.name
模式汇总:*****
'''
主模式:r 读| w 写| a 追加
从模式:b 按字节操作 | t 按字符操作 | + 可读可写
了解:x 异常写 |U 被遗弃了
主模式:
r: 读,无创建,不能对文件进行任何操作
w: 写,有创建,有清空
a: 追加,有创建,无清空
从模式:(从模式必须在主模式后面,不能单独出现)
t: 文本操作(默认模式) r=>rt w=>wt a=>at
b: 非文本文件必须采用二进制模式来处理
+: 可读可写
主、从:
r:读,无创建,不能对文件进行任何操作
r+:可读可写,无创建,不能对文件进行任何操作
rb:二进制读,无创建,不能对文件进行任何操作
rb+:二进制读写,无创建,不能对文件进行任何操作
w:写,有创建,清空文件
w+:可读可写,有创建,清空文件
wb:二进制写,有创建,清空文件
wb+:二进制读写,有创建,清空文件
a:追加,有创建,无清空
a+:可读可写,有创建,不清空文件(追加)
ab:二进制写,有创建,不清空文件(追加)
ab+:二进制读写,有创建,不清空文件(追加)
'''
游标操作:
1. 如何使用游标:游标的相关方法
2. 游标相关的读写操作
3. 根据游标在大文件中取出多个指定位置的部分字节内容
'''
'''
方法:
seek(偏移量,偏移位置) 必须在b模式
偏移量:移动的字节量,负数是结合模式1,2 往前偏移 (rb模式执行,d1.decode解码)
偏移位置:0 - 将游标移至数据的开头| 1 - 从当前游标位置开始偏移 |2 - 从文件末尾开始偏移
例如:
with open('job.TXT','rt',encoding='utf-8') as f:
d1 = f.read()
f.seek(0,0)
print(d1)
d2 = f.read()
print(d2)
pass