文件的指针位置

f = open('指针测试.txt','a+',encoding='utf-8')  # 这里会直接创建文件,可查看a,w,r,以及分别加加号‘+’和加b的区别
# tell() 显示文件指针
print(f.tell())

# 更改文件指针的位置  seek(偏移量,whence)
# 偏移量是数字,距离whence字符数
# whence:0:文件开头 1:当前位置 2:文件结尾  seek(10,0)  # 可能只有rb或者rb+的时候偏移量才能是负数,也就是倒着数,这里笔者没有具体测试
# f.seek(4,0)
# print(f.read())
# f.seek(0,0)
# f.write('aaaaa\nbbbbb\nccccc\nddddd\n')
# f.seek(4,0)
f.seek(0, 0)
print(f.read())
print('='*10)
# aaaaa\r\nbbbbb,这串数字从第五,第六个位置打印后两位是一样的
f.seek(6, 0)                               # seek 移动鼠标位置(位数)包含\r\n,读取时(位数)不包含\r
print(f.read(2))      # 本来是光标移动到开始0,打印光标后七个的最后一个,和光标移动到第六个,打印后一个是一样的
print('-'*10)         # 第六个位置是\r,第七个位置是\n,所以读七个不包括\r,会打出来b,移动六个,打印后一个则不是b
f.seek(5, 0)          # 可是光标的移动是包括\r\n的,多一位,所以结果会不同
print(f.read(2))

f.close()

# 补充以下系统换行时所占字节位数
# windows  \r\n  \r表示回行首 \n换行
# unix/linux  \n
# mac  \r
# 这里的‘指针测试.txt’文件里的内容如下:
# aaaaa
# bbbbb
# ccccc
# ddddd

                                                                   -------  知识无价,汗水有情,如需搬运请注明出处,谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值