当我在程序中的日期范围之间调用数据库搜索时,它会返回
'(', (4, u'Jake', u'Ryan', u'Bowman', 1, 8, u'12/13/13'), ')', '(', (5, u'Katie', u'Brian', u'Adams', 0, 10, u'12/13/13'), ')', '(', (6, u'Katie', u'Brian', u'Adams', 8, 8, u'12/25/13'), ')',
以这种格式返回此值的最佳方法是什么:
(4,'Jake','Ryan','Bowman',1,8,'12/13/13'),(5,'Kate','Brian','Adams',0,10 '12/13/13'), etc
别介意unicode,我只需要一个可以在csv库中使用的元组。
答案 0 :(得分:1)
您可以将其放入如下列表中:
>>> t = ['(', (4, u'Jake', u'Ryan', u'Bowman', 1, 8, u'12/13/13'), ')', '(', (5, u'Katie', u'Brian', u'Adams', 0, 10, u'12/13/13'), ')', '(', (6, u'Katie', u'Brian', u'Adams', 8, 8, u'12/25/13'), ')', ]
>>> t = [row for row in t if row not in ('(', ')')]
>>> t
[(4, u'Jake', u'Ryan', u'Bowman', 1, 8, u'12/13/13'), (5, u'Katie', u'Brian', u'Adams', 0, 10, u'12/13/13'), (6, u'Katie', u'Brian', u'Adams', 8, 8, u'12/25/13')]
您主要需要删除parens字符串。结果很容易放入csv文件中。
答案 1 :(得分:0)
过滤列表并保留元组。
result = ['(', (4, u'Jake', u'Ryan', u'Bowman', 1, 8, u'12/13/13'), ')', '(', (5, u'Katie', u'Brian', u'Adams', 0, 10, u'12/13/13'), ')', '(', (6, u'Katie', u'Brian', u'Adams', 8, 8, u'12/25/13'), ')', ]
tuples = [t for t in result if isinstance(t, tuple)]