python - Python:尝试将字符串写入新文件时仅写入字符串的最后一行
问题描述
我正在将文本文件作为列表读取,并仅提取第一列数据,其中“”(键盘空间)作为拆分分隔符。
我正在尝试将生成的字符串数据写入一个新文件。
当我创建字符串数据并将其写入新文件时,新创建的文件中只存在字符串数据的最后一行。
例如,当我打印字符串数据时,我可以看到整个字符串。
graphics/1.jpg
graphics/2.jpg
graphics/3.jpg
graphics/4.jpg
graphics/5.jpg
但是,新文件已创建但仅包含最后一行:
graphics/5.jpg
我尝试使用“a”而不是“w”来编写在不同堆栈溢出线程中指定的新文件。
不知道我需要做什么才能将整个字符串数据写入新创建的文件。请帮忙!
with open(fig_file, "r") as f:
for line in f:
fields = line.split(" ")
field1 = fields[0]
print(field1)
with open("list.txt","w") as wp:
wp.write(field1)
解决方案
您只在文件中写入一行,永远!
这应该有效。
lines = []
with open(fig_file, "r") as f:
for line in f:
fields = line.split(" ")
field1 = fields[0]
print(field1)
lines.append(field1)
with open("list.txt","w") as wp:
wp.writelines(lines)
推荐阅读
- python-3.x - 熊猫转置到新列
- powershell - 如何在 SharePoint 库中查找损坏的文档链接
- xml - 如何在 Powershell 的 XML 标签中使用变量?
- php - 使用 libjpeg-6b 编译 PHP
- docker - 为什么“docker stop CONTAINERID”也会删除我停止的容器?
- django - 如何避免用户使用 Django Channels 创建新的 Websockets/Rooms?
- javascript - Hardhat 编译错误“期望 HttpNetworkConfig 类型的值”
- ftp - 使用 FTP(唯一选项)在 linux 中使用单行命令同步目录中的文件
- apache-spark - Databricks 检查点 java.io.FileNotFoundException:没有这样的文件或目录:
- css - 使用 CSS 选择除 ID 之前的所有 P 元素