tuple2csv snipplet

Shakeeb Alireza sa at bayt.net
Wed Jul 4 03:03:44 EDT 2001


Hi folks,

A friend and I have just spent a bit of time trying to convert tuples
(generated from an SQL query) into comma separated values. As it seems
to work we thought we'd share what we have come up with so far. It's a
bit of a hack however... is there a better way to do this?

All the best,

Shakeeb


<code>

t1 = (None, 'spam', 'bar', "Python's kewl", None, None)
t2 = (123, 'She said "Ni!" and smiled.')

import re

def tuple2csv(tuple):
    s = str(tuple)
    p = re.compile(", *None")
    s = p.sub(', ""', s)
    p = re.compile("None *,")
    s = p.sub('"",', s)
    p = re.compile(", *None *,")
    s = p.sub(', "",', s)
    p = re.compile("' *\)")
    s = p.sub('"', s)    
    p = re.compile("\( *'")
    s = p.sub('"', s)
    p = re.compile("\)")
    s = p.sub('', s)    
    p = re.compile("\(")
    s = p.sub('', s)        
    p = re.compile("('|\") *,")
    s = p.sub('",', s)
    p = re.compile(", *('|\")")
    csv = p.sub(',"', s)
    return csv

print tuple2csv(t1)
print tuple2csv(t2)

</code>



More information about the Python-list mailing list