我的结果数据位于元组列表中,每个元组都有一个列表:
[(['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ['I', 'J', 'K', 'L', 'M', 'N']),
...
(['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ['I', 'J', 'K', 'L', 'M', 'N'])]
剥离所有嵌套和引号并将A:N写入制表符分隔文件的最佳方法是什么?
答案 0 :(得分:4)
引号不是字符串的一部分,它们表示字符串。你将无法删除它们。
csv
module使这一点变得非常简单:
import csv, itertools
with open('file.csv', 'wb') as f:
writer = csv.writer(f, delimiter="\t")
writer.writerows(list(itertools.chain(*t)) for t in results)
这会产生一个文件,其中每一行对应一个元组,一行包含两个列表的字母,用制表符分隔。
答案 1 :(得分:-1)
递归是解决这个问题的自然方法。
让目标成为你的清单[([A,B ..]),([A,B])]
def dump(target):
for obj in target:
if isinstance(obj,tuple) or isinstance(obj, list):
dump(obj)
else:
print(obj),
dump(target)
print()