每行的列数不同,但列A始终是文件名,其余列是该文件的字段。
有什么方法可以计算每一行的列数?
import csv
file=('C:/)
with open('C:/Count.csv','w',encoding='cp949',newline='') as testfile:
csv_writer=csv.writer(testfile)
for line in file:
lst=[len(line)]
csv_writer.writerow(lst)
答案 0 :(得分:3)
您可以选择分割逗号或使用csv
打开文件。
我推荐后者。以下是如何做到这一点:
file1 = ... # file to read
file2 = ... # file to write
with open(file1, 'r') as f1, open(file2, 'w', encoding='cp949', newline='') as f2:
csv_reader = csv.reader(f1)
csv_writer = csv.writer(f2)
for row in csv_reader:
csv_writer.writerow([len([x for x in row if x])]) # non-null counts only
同时打开两个文件,遍历文件进行读取,使用len(row)
对其列进行计数,然后将其写出来。