python - 如何打开文件、替换一些字符串并将更新保存到同一个文件?
问题描述
我正在尝试遍历目录中的所有 CSV 文件,进行查找/替换,并将结果保存到同一个文件(同名)。看起来这应该很容易,但我似乎在这里遗漏了一些东西。这是我正在使用的代码。
import glob
path = 'C:\\Users\\ryans\\OneDrive\\Desktop\\downloads\\Products\\*.csv'
for fname in glob.glob(path):
print(str(fname))
with open(str(fname), "w") as f:
newText = f.read().replace('|', ',').replace(' ', '')
f.write(newText)
我遇到了下面的链接,并尝试了那里列出的概念,但到目前为止没有任何效果。
解决方案
您需要使用'r+'
而不是打开文件'w'
。见下文:
import glob
path = 'C:\\Users\\ryans\\OneDrive\\Desktop\\downloads\\Products\\*.csv'
for fname in glob.glob(path):
print(str(fname))
with open(str(fname), "r+") as f:
newText = f.read().replace('|', ',').replace(' ', '')
f.write(newText)
推荐阅读
- r - 删除绘图中的自动标题 (R)
- reactjs - 无法从 API 中提取数据并在 React 中绘制数据
- javascript - d3.js 中的补间文本 - 向上计数
- reactjs - 取消选中并选中 ag-Grid 中 columnsMenuTab(列列表)中某些列的复选框
- micronaut - Micronaut @Controller 通配符
- angular - Laravel Passport API 在开发过程中切换用户
- c++ - 使用向量为每位玩家发 5 张牌
- acumatica - Acumatica 导入场景的投射错误
- python - Django Formset - 在保存之前更新 Views.py 中的值
- c++ - 如何在 c++ 中确保 gRPC 中的 TLS1.3