我想从'B.csv'文件附加一列,并把它放到'a.csv'文件,但它只添加一个字母,而不是整个字符串。我试着在谷歌搜索,但没有答案。我想把标题下的列“数字”。这是我的代码:
f = open('b.csv')
default_text = f.read()
with open('a.csv', 'r') as read_obj, \
open('output_1.csv', 'w', newline='') as write_obj:
csv_reader = reader(read_obj)
csv_writer = writer(write_obj)
for row in csv_reader:
row.append(default_text[8])
csv_writer.writerow(row)
这是“a.csv”中的信息
name,age,course,school,number
Leo,18,BSIT,STI
Rommel,23,BSIT,STI
Gaby,33,BSIT,STI
Ranel,31,BSIT,STI
这是“B.csv”中的信息
1212121
1094534
1345684
1093245
2条答案
按热度按时间kr98yfug1#
您可以连接从两个CSV文件读取的行,并立即将其传递给writer:
因此,我们为CSV文件初始化
csv.reader()
,为输出初始化csv.writer()
。(a.csv
)* 包含列名,我们使用next()
读取它,并传递给.writerow()
,将它们写入输出,而不做任何修改。然后使用map()
,我们可以同时迭代两个读取器,应用operator.concat()
连接从两个读取器返回的行。我们可以将它直接传递给.writerows()
,并让它使用map()
返回的生成器。y1aodyip2#
如果只有panda无法使用,那么使用convtools库中的
Table
helper(github)会很方便。