如何打开目录中的所有文件并将更改保存在同一个文件上?

2024-04-16 09:56:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图编写一个脚本,在特定目录中循环所有CSV文件,读取它们,并用0替换所有子字符串_。你知道吗

我的代码是:

import csv
f = open ('Tripdata_30_20160806.CSV')
csv_f = csv.reader(f)
for i in csv_f:
    for l in i:
        if "_" in l:
            print l.replace("_", "0")
            print l
    continue
f.close()

我的输出是:

2199725502
21997255_2
2199868606
21998686_6
2199726205
21997262_5
1756520101
17565201_1
1756384803
17563848_3

不指定文件名,如何读取给定目录中的所有文件?CSV文件名是动态的。你知道吗

第二,如何才能将更改保存在同一个文件中?你知道吗


Tags: 文件csv字符串代码inimport目录脚本
1条回答
网友
1楼 · 发布于 2024-04-16 09:56:23

如果您只想替换文件中的所有下划线,请不要使用CSV模块。只需读取文件,替换下划线,然后将修改后的文本写回文件。你知道吗

filename = 'C:\\path\\to\\file.csv'

f = open(filename)
txt = f.read()
f.close()

f = open(filename, 'w')
f.write(txt.replace("_", "0"))
f.close()

要枚举目录的内容,可以使用^{}

import os

d = 'C:\\some\\folder'

for f in os.listdir(d):
    filename = os.path.join(d, f)

相关问题 更多 >