You write that row separately
with open('test.csv', 'w', newline= '') as f: a = csv.writer(f, delimiter=',') a.writerow(["Header 1", "Header 2"]) ## etc a.writerows(rows) ## closing paren added