鱼C论坛

 找回密码
 立即注册
查看: 172|回复: 1

关于永久存储指针的问题

[复制链接]
发表于 2024-11-25 23:04:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1. 还是上一题的那个文件(FishC.txt),这次请编写代码,截取前面 15 个字符,并保存覆盖保存原文件。

代码清单:来自:https://fishc.com.cn


f = open("FishC.txt", "r+")
   
f.seek()
f.truncate(10)
   
f.close()


请问f.seek()的意思不是指针到开头吗?
此时再f.truncate(10),不是只截取到第10个字符吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-11-25 23:05:13 | 显示全部楼层
`f.seek()` 的确是用于移动文件指针的位置,但是调用时需要指定参数。例如,`f.seek(0)` 将文件指针移动到文件开头。没有参数的 `f.seek()` 是不合法的用法,会导致错误。

在您的代码中,您想截取前 15 个字符并覆盖保存原文件。以下是修正后的代码:
f = open("FishC.txt", "r+")

# 移动文件指针到文件开头
f.seek(0)

# 读取文件的前15个字符
content = f.read(15)

# 移动文件指针到文件开头
f.seek(0)

# 清空文件并写入前15个字符
f.truncate(0)
f.write(content)

f.close()

这里我们做的是:
1. 打开文件并移动指针到文件开头。
2. 读取前 15 个字符。
3. 将指针再次移动到开头,清空文件并写入这 15 个字符。

这样可以确保文件中仅保留原始内容的前 15 个字符。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-2-6 00:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表