python的truncate()函数

函数作用

把一个文件流截断,不带参数时,就在当前位置截断。比如说一个100B的文件,我只需要它的前20B内容,那么就可以使用这个函数

函数用法

新建一个文件baidu.txt如下,并将该文件放在与test.py放在一个目录下
需要知道的是,一个字符占一个字节,在第一行和第二行之间还有个换行符’\n’,转义字符占两个字节,那么整个第一行:1:www.baidu.com’\n’
是占17个字节的
在这里插入图片描述

用法一:不设置truncate()参数

test.py的内容如下

fo = open("baidu.txt", "r+", encoding="utf-8")  # 以读的形式打开文件
fo.seek(34)  # seek()是偏移量函数,34表示文件指针指向第35个字节(偏移量从0开始)所在位置
fo.truncate()  # 第35个字节及之后的内容被截断了
fo.seek(0)  # 再将文件指针指向第0个位置
line = fo.readlines()   # line是第0到第34个字节的所有内容
print("读取行: %s" %(line))
fo.close

结果如下,读取了34个字节,即两行的字符
在这里插入图片描述

用法二:设置truncate()参数

fi = open("baidu.txt", "r+", encoding="utf-8")  # 以读的形式打开文件
fi.truncate(11)  # 截取前11个字节
fi.seek(0)  # 将指针放到第一个字节的位置(这里不用也行,是为了保险起见)
line = fi.read()
print("读取数据: %s" % (line))
fi.close()

结果如下,读取了前11个字节
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值