python中的f.truncate()函数

FatFs 应用接口函数 大多数API函数以枚举类型FRESULT返回常见的结果代码。FR_OK(成功),FR_DISK_ERR(下层disk_read、disk_write或disk_ioctl函数报告发生了不可恢复的硬盘错误。),FR_INT_ERR(断言失败,在内部流程中检测到异常),FR_NOT_READY(下层disk_initialize函数报告存储设备无法做好工作准备。),FR_NO_FILE(目录中没找到文件),FR_NO_PATH(在路径名中找不到目录。), 阅读详情

  今天要用到f.truncate函数, 但对其功能不是很熟悉, 就查了一下资料.
  先是在idle中打开了一个文件, 用help(f.truncate)查看一下:

>>> help(f.truncate)
Help on built-in function truncate:

truncate(pos=None, /) method of _io.BufferedWriter instance
    Truncate file to size bytes.
    
    File pointer is left unchanged.  Size defaults to the current IO
    position as reported by tell().  Returns the new size.

  感觉语焉不详, 形参为pos, 但说明里说的是size.

  然后又上网搜到一个链接, https://blog.youkuaiyun.com/yandajiangjun/article/details/102307205
  讲得也很浅显, 收藏数量也很高, 当时以为自己看懂了, 还自己总结了一下.

  刚好那时有闲, 就验证了一番, 发现全然不是那么回事, 上面那篇文章中的验证方法和结论中错误很多!
  我的验证过程就不多写了, 有闲的人也可以自己验证一下, 下面只给出我自己得出的结论:

f.truncate(size)
  //返回截取后的尺寸. 总是从头开始, 如果指定尺寸则按尺寸截取; 如果未指定, 则截取到当前位置;
  //调用f.readline()后, 对于f.truncate, 当前位置总在最后的位置(对于r+打开模式); 所以要想准确使用, 最好在rb+模式下

f.seek(0, 2)
  //在文件中找到最后的位置(0代表偏移, 2代表whence中的最后)
  //如果出现io.UnsupportedOperation: can’t do nonzero end-relative seeks 这个错误(指定了负偏移), 主要是因为在python3和python2的问题, 该程序在Python2中是不会报错的, Python3则会报错. 因为Pyhon3在文本文件中, 没有使用b模式选项打开的文件, 只允许从文件头开始计算相对位置, 从文件尾计算时就会引发异常; 在开始使用open打开文件时候, 将打开方式从r, 换成rb即可, 即: f = open(“test.txt”,“rb”) 如果使用seek, 这里必须使用rb

参考文档: https://blog.youkuaiyun.com/weixue9/article/details/112259365

Python文件操作指南:truncate方法的用法 在Python中,我们经常需要对文件进行读取、写入和编辑操作。其中,truncate方法是一个非常有用的文件操作方法,它可以用来截断文件内容并将其长度调整为指定的大小。本文将详细介绍truncate方法的使用,并提供相应的源代码示例。 阅读详情

相关推荐

linux c用open打开(创建)一个文件

1、文件描述符 Linux操作系统内核(kernel)利用文件描述符来访问文件,文件描述符大于等于0,是一个用户描述被打开文件的索引值,它指向该文件的相关信息记录表,当文件打开或者创建新文件的时,就会返回一个文件描述符,当读写文件时,也需要使用文件描述符来指定特写文件。 2、讲解open函数 文件需要先打开或则创建 如果返回是-1, 则出错,如果成功,则返回文件描述符 第一个

码莎拉蒂 4万+

python的truncate()函数

truncate()函数解析函数作用函数用法用法一:不设置truncate()参数用法二:设置truncate()参数 函数作用 把一个文件流截断,不带参数时,就在当前位置截断。比如说一个100B的文件,我只需要它的前20B内容,那么就可以使用这个函数 函数用法 新建一个文件baidu.txt如下,并将该文件放在与test.py放在一个目录下 需要知道的是,一个字符占一个字节,在第一行和第二行之间还有个换行符’\n’,转义字符占两个字节,那么整个第一行:**1:www.baidu.com’\n’**是占17

qq_43138237的博客 6316

主流 AI 插件 之一的 Copilot 介绍

Copilot 是微软推出的一款人工智能助手,旨在通过自然语言交互帮助您提升工作效率和创造力,覆盖多平台,提供智能问答、内容生成、代码辅助等功能。其核心定位为“日常 AI 伴侣”,旨在通过自然语言交互提升工作与生活效率。

u014695938的博客 6883

python中的truncate()方法

1.要么从当前位置截断,即:truncate()方法内不带参数 文本内容是: 我爱我的祖国 攀登者 中国机长 角色和那个时刻 file='a_dir/pi' with open(file,'r+',encoding='utf-8') as f: a=f.readline() print(a) f.truncate() B=f.readlines() ...

yandajiangjun的博客 1万+

vmware vsphere 证书过期告警处理方法

vSphere Clinet 管理页面出现“证书告警” ,检查证书未发现现有证书有过期现象

m0_51902127的博客 3637

UG NX二次开发(C++)-NX2406系列二次开发编程模板配置

前面已经写了有关UG NX二次开发编程模板配置的文章,但是由于NX2406/2412系列的版本中,在UGOpen文件夹中没有了vs_files文件夹了,而是采用了VSIX Project的方式配置(其适用于VS2019),在VS2022中不能正确的配置。我结合以前配置模板的经验和现在的配置方式讲一下NX2406系列二次开发编程模板的配置。我把相应的编程模板放在资源文件UG NX二次开发编程模板(基于NX2406版本制作)中,方便大家下载使用。

GimiGimmy 2640

python基础之文件操作,函数

文件操作 +模式: r+t w+t a+t r+b w+b a+b 可读可写,其他功能与人,r,w,a相同 f.seek(offset,whence) 文件指针移动 offest的单位为bytes whence是参照物 f.seek(3,0) whence默认值为0 0:文件开头开始 1:当前指针位置 2:参照末尾 强调:其中...

aihuangzhi8131的博客 194

【工具插件类教学】Unity翻书效果插件Book-Page Curl Pro教程

特征: • 从左到右和从右到左翻页 • 与画布缩放器 配合使用 • 可配置的自动翻转脚本 • 支持向页面 添加 UI 元素 • 支持透明页面 • 适用于“世界空间”画布

纯技术流日常开发商业开发记录总结等 3673

python 光标位置输入文字_python文本操作

open()函数来打开一个文件, 获取文件句柄(文件句柄是一个可迭代的对象). 然后通过文件句柄就可以进行各种各样的操作了了. 根据打开方式的不同能够执行的操作也会有相应的差异因为文件句柄是一个可迭代的对象,可以通过for循环读取数据,并且它每次读取的时候都是读取一行内容f = open('gg','r',encoding = 'utf-8')for i in f:#读取文件中的内容。 一行一行的...

weixin_39665847的博客 1797

STM32(HAL库)驱动HC-SR04测距模块

本文介绍通过STM32F103C8T6单片机对HC-SR04测距模块进行驱动,并且通过串口对数据进行打印。

weixin_44597885的博客 2203

Python二级考试题目及答案解析(含刷题软件)

答案:A 解析:print()函数可以在屏幕上输出指定的字符串或变量,input()函数用于从键盘获取用户输入,int()函数可以将指定的字符串或浮点数转换为整数,float()函数可以将指定的字符串或整数转换为浮点数。答案:A 解析:int()函数可以将字符串转换为整数,float()函数可以将字符串转换为浮点数,str()函数可以将任意类型的变量转换为字符串,bool()函数可以将任意类型的变量转换为布尔值。

YOLO 1万+

Python_26文件操作的一些方法

f=open('g:\liumang.txt','r+') f.write('123')此时只是将内容写入到了内存中,还未写到硬盘里,此刻如果有一个input阻断,则文件liumamg.txt的内容是不会更新的,如果在f.write()之后运用f.flush()则直接将内容写入到了硬盘文件里,而不会受到input之类的影响 f.read(1)表示读取一个字节或者字符 f.readline()...

weixin_30347335的博客 81

Codex 100个真实案例 - 用AI画业务流程图Mermaid(产品经理都馋哭了)

还在用 Visio、ProcessOn 拖拖拽拽画流程图?改一个箭头方向就要调半天?本案例教你用 Codex 自然语言描述业务流程,AI 自动转为 Mermaid 代码,一秒生成专业流程图、时序图、甘特图、饼图!还能搭建在线渲染工具、批量导出 PNG/SVG、集成到文档系统。产品经理、架构师、项目经理都能用,从此画图再也不是体力活!

yueyeguzhuo的专栏 347

第6天,python之路

趁着周天,有点时间,多写点 ,能记着多少写多少吧,还是漏漏写了很多。后面想到了,需要写的时候的在写吧 文件打开方式 方式一: f = open(path,mode,encoding) f.write() f.read() f.close() 方式二: withopen(path,mode,encoding) as f:    f.write()   f.re...

LSC813177897787的博客 121

STM32 USB键盘实现指南

在STM32上实现键盘功能可以通过USB HID(人机接口设备)协议来实现,使STM32设备能被计算机识别为标准键盘。通过上述步骤,您可以在STM32上实现一个功能完整的USB键盘。关键点包括:正确配置USB HID设备实现键盘矩阵扫描处理按键事件并生成HID报告优化按键响应和消抖处理添加额外功能如宏键和LED反馈这个实现可以作为基础,进一步扩展为游戏键盘、宏键盘或特殊输入设备。

suny8的专栏 968

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

python之路《七》文件的处理

其实我觉得python的方便之处就是简便特别是对数据的处理上 当我们要处理一些数据的时候免不了的就是要处理许多的文件那么下面就让我们来看一下文件的处理 1.打开文件 python的文件打开方式较为简单 f = open('sing.op','r',encoding='utf-8') f.close() 注意打开之后当操作完后一定要关闭养成一个良好的习惯 那么 让我们来解析一下...

weixin_30668887的博客 75

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

文件操作的其他方法

f.flush() #刷新 f.tell() # 告诉指定位置 f=open('test','r',encoding='utf-8',newline='') #newline=''是读取文件中真正的换行符号 f.seek() #控制光标的移动 #一个中文代表三个字节,若读取的文件中有中文,则f.seek(1) print(f.read()),直接读取文件内容会报错,若是改为f.seek(3)之后再读取就会读取到第一个文字之后的内容。 f.read(4) #读取的是文...

SY的博客 88

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

python学习第三周之文件读与写2

1.先建txt文档perfect,里面是我自己粘进去的歌词,f.tell()把文件句柄所在指针的位置打印出来,f.seek()将光标定位到某个位置 f=open("perfect",'r',encoding="utf-8") print(f.tell()) #把指针的位置打印出来,打印当前的位置 print(f.readline().strip()) print(f.tell()) f.se...

wuxiaorututu的博客 140

python处理文档_Python之文件处理

文件处理:文件操作分为读、写、修改读:f = open(file = 'D:/luffy/购物信息.txt ,mode = 'r' , encoding = 'utf-8') date = f.read() f.closeencoding = 'utf-8' 表示 按照uft-8 的规则去断句,然后转换成unicde存储mode = 'r' 表式只读f.read()表示读取的所有内容(已转换成字符...

weixin_39865204的博客 90

文件操作

文件操作 f = open(文件路径, mode="模式", encoding="编码") mode: r, w, a, r+, w+, a+, rb, wb, ab, r+b, w+b, a+b b 操纵的是字节. 处理非文本文件 r+ 又读又写 with open(...) as f : 文件操作...

weixin_30394333的博客 71

卷积神经网络

listdir:https://m.runoob.com/python/os-listdir.html f.seek():https://blog.csdn.net/weixin_42752248/article/details/108416873https://blog.csdn.net/weixin_42752248/article/details/108416873 f.truncate() :https://www.runoob.com/python/file-t...

m0_58182797的博客 560

python_file

python 的文件操作:

ginkgo_dia的博客 458

python文件函数_Python文件指针与Python函数

文件内指针移动:f.seek()强调:只有t模式下read(n),n代表字符的个数,除此以外都是以字节为单位。"""文件内容:哈哈哈哈呵呵呵呵"""with open(r'C:\Users\test.txt', mode='rt', encoding='utf-8') as f:res= f.read(4)print(res)哈哈哈哈f.truncate(size):从文件的首行首字符开始截断,截...

weixin_39544101的博客 123

truncate python是删除文件内容吗_Python 文件 truncate() 方法

概述Python 文件 truncate() 方法用于截断文件并返回截断的字节长度。指定长度的话,就从文件的开头开始截断指定长度,其余内容删除;不指定长度的话,就从文件开头开始截断到当前位置,其余内容删除。语法truncate() 方法语法如下:fileObject.truncate([size])参数size-- 可选,如果存在则文件从开头截断为指定字节。返回值该方法没有返回值。实例以下实例演...

weixin_39599372的博客 255
上一篇: win7(win10)更改“文件类型显示图标“的终极修改方法
下一篇: Git 提示 “warning: LF will be replaced by CRLF“的思考
souching
博客等级 码龄17年 8粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值