我想读取 csv 文件的每一行并将行中的每个单词与字符串列表相匹配。如果行中出现任何字符串,则将该字符串写在行尾,以逗号分隔。下面的代码没有给我我想要的。
file = 'test.csv'
read_files = open(file)
lines=read_files.read()
text_lines = lines.split("\n")
name=''
with open('testnew2.csv','a') as f:
for line in text_lines:
line=str(line)
#words = line.split()
with open('names.csv', 'r') as fd:
reader = csv.reader(fd, delimiter=',')
for row in reader:
if row[0] in line:
name=row
print(name)
f.write(line+","+name[0]+'\n')
test.csv 的示例如下所示:
A,B,C,D
ABCD,,,
Total,Robert,,
Name,Annie,,
Total,Robert,,
而 names.csv 会看起来:
Robert
Annie
Amanda
我想要的输出是:
A,B,C,D,
ABCD,,,,
Total,Robert,,,Robert
Name,Annie,,,Annie
Total,Robert,,,Robert
目前,代码将删除不会导致匹配的行,所以我得到了:
Total,Robert,,,Robert
Name,Annie,,,Annie
Total,Robert,,,Robert
相关分类