python - 根据查询Python写入CSV中的特定行
问题描述
我正在尝试在我的 csv 文件中查找一个值,如果找到它,请在其行的末尾写回一个值。例如,如果 csv 看起来像这样:
# A B
111 1
112 0
113 0
114 1
我查找 111 并想在其行的第一个空单元格中写入 0,我该怎么做?
解决方案
无法在文件中间插入数据。写入文件中间将覆盖该位置的数据。反而:
- 以读取模式打开文件
- 读取文件中的所有数据
- 关闭文件
- 以写入模式重新打开文件
- 写前几行
- 写下你的额外数据
- 写剩下的原始数据
一个例子:
with open('test.csv') as f:
l = f.readlines()
l[4] += '0'
with open('test2.csv', 'w') as f:
f.writelines(l)
推荐阅读
- flutter - StatefulBuilder:为什么不支持 init/dispose
- c++ - 从具有固定数组大小的基类指针访问派生类
- html - 所有 wix 托管图像(图像 url)都不会在移动版本上显示,但在桌面上可以完美运行?如何进行?
- android - 媒体播放器在后台
- mapbox - 仅使用 fetch API 从 mapbox 获取建筑物多边形点
- python-3.x - 在 IBM SPSS Statistics 版本 26 中安装或导入 Pandas
- firebase - 新创建的 Firebase 函数引发 UNAUTHENTICATED 错误
- reactjs - 如何在使用 reactjs 提交方法时一次发布 2 个 API?
- android - 使用自定义分辨率录制 Camera2 视频?
- reactjs - 在 404 上反应无限循环