首页 > 移动平台 > 详细

控制文件内指针移动

时间:2020-08-08 17:54:13      阅读:65      评论:0      收藏:0      [点我收藏+]
一、f.seek(字节个数,模式)
模式有三种
0:参照文件的开头
1:参照当前所在的位置
2:参照文件末尾的位置

# 注意:
# 1、无论何种模式,都是以字节单位移动,只有t模式下的read(n)的n代表的是字符个数
with open(‘a.txt‘,mode=‘rt‘,encoding=‘utf-8‘) as f:
data=f.read(6)
print(data)

with open(‘a.txt‘,mode=‘rb‘) as f:
data=f.read(6)
print(data.decode(‘utf-8‘))

# 2、只有0模式可以在t模式下使用,而0、1、2都可以在b模式下用

# 示例
with open(‘a.txt‘,mode=‘rb‘) as f:
f.seek(6,0)
print(f.read().decode(‘utf-8‘))
f.seek(16,1)
print(f.tell())

f.seek(-3,2)
print(f.read().decode(‘utf-8‘))

f.seek(0,2)
print(f.tell())



with open(‘b.txt‘,mode=‘wt‘,encoding=‘utf-8‘) as f:
f.seek(10,0)
print(f.tell())

f.write("你好")


# 应用1:tail -f access.log
import time

with open(‘access.log‘,mode=‘rb‘) as f:
f.seek(0,2)

while True:
line=f.readline()
if len(line) == 0:
time.sleep(0.3)
else:
print(line.decode(‘utf-8‘),end=‘‘)


控制文件内指针移动

原文:https://www.cnblogs.com/datatool/p/13457462.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!