Python 怎么根据一个csv文件对另一个csv文件进行修改。

test1.csv

img

test2.csv

img

现在我想删除test1.csv中在test2.csv里没有的id的行,也就是呈现下图的效果

test1.csv

img

test1_csv = csv.DictReader(open('./test1.csv','r'))
test1 = set(i.get('id') for i in test1_csv)

test2_csv = csv.DictReader(open('./test2.csv','r'))
test2 = [i for i in test2_csv if i.get('id') in test1]

with open('./test1.csv','w') as file:
    writer = csv.DictWriter(file, test2[0].keys(), lineterminator='\n')
    writer.writeheader()
    writer.writerows(test2)

上面是我尝试的代码,如果test1.csv中没有age列,该代码是可以的,但是多了age列后,就会报错。请问该如何做呢?