I have a tuple of tuples
import csv
A = (('Max', 3 ,' M'),('bob',5,'M'),('jane',6,'F'))
result = open("newfile.csv",'wb')
writer = csv.writer(result, dialect = 'excel')
writer.writerow(A)
result.close
This writes a CSV file with rows with A[0], A[1] and A[2] .
What i want is a row with name, age and gender , which has the corresponding values .
解决方案
Write all rows at once:
writer.writerows(A)
instead of
writer.writerow(A)
File newfile.csv looks now like this:
Max,3, M
bob,5,M
jane,6,F
Also, add () to your last line, it is a function call: result.close().
If you are on Python 2.6 or newer, you can use this form:
import csv
A = (('Max', 3, 'M'),('bob', 5, 'M'),('jane', 6, 'F'))
with open('newfile.csv', 'wb') as result:
writer = csv.writer(result, dialect='excel')
writer.writerows(A)