我无法扩展代码以在.csv的文件夹中使用,而不是仅使用一个文件。我已经编写了读取和操作单个文件的代码,该文件以以下代码开头,并将数据放入3个列表中:
$myStr = substr($myStr, 1, -1);
由于其结构(一个csv中有3个不同的表),我不得不逐行浏览每个csv
我有一个.csvs所在的文件路径with open('Filename_raw.csv', 'r') as read_obj:
csv_reader = reader(read_obj)
list1 = []
list2 = []
list3 = []
for row in csv_reader:
if len(row) == 3:
list1.append(row)
if len(row) == 16:
list2.append(row)
if len(row) == 21:
list3.append(row)
...
...
...
,因此我希望获得有关如何循环浏览文件夹中所有文件的指南,而不是一个。
文件名的结构类似,并且始终以“ _raw.csv”结尾
任何帮助将不胜感激-谢谢!
答案 0 :(得分:1)
以下代码应该可以工作。我还更新了代码,因为可以使用if - elif
而不是使用三个if条件。否则,即使第一个条件满足了,代码也会检查这三个条件。
import os
directory = os.path.join("c:\\","path")
for root,dirs,files in os.walk(directory):
for file in files:
if file.endswith("_raw.csv"):
with open(file, 'r') as read_obj:
csv_reader = reader(read_obj)
list1 = []
list2 = []
list3 = []
for row in csv_reader:
if len(row) == 3:
list1.append(row)
elif len(row) == 16:
list2.append(row)
elif len(row) == 21:
list3.append(row)