Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to write a tuple of tuples to a CSV file using Python

Tags:

python

csv

tuples

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 .

like image 357
Viv_bio Avatar asked Dec 31 '11 10:12

Viv_bio


Video Answer


1 Answers

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)
like image 171
eumiro Avatar answered Nov 14 '22 21:11

eumiro