2017-04-04 10 views
1

私は引用符や角括弧なしでCSV形式で印刷したいタプルのリストを持っています。タプルされたタプルのリストをCSV形式で印刷するにはどうすればよいですか?

[(('a','b','c'), 'd'), ... ,(('e','f','g'), 'h')] 

所望の出力:

a,b,c,d,e,f,g,h 

私はチェーン、.join()または*演算子はを使用して句読点の一部を取り除くことができますが、私の知識はを取り除くために十分洗練されていませんすべての私の特定のユースケースのために。

ありがとうございます。あなたが古いバージョンである場合には、

>>> list(chain.from_iterable((*a, b) for a,b in x)) 
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'] 
>>> 

そして:

>>> x = [(('a','b','c'), 'd') ,(('e','f','g'), 'h')] 
>>> [c for a,b in x for c in (*a, b)] 
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'] 

あるいは、itertools.chainソリューション:

答えて

1

だから、あなたのケースであり、これは比較的簡単ですパターンがありますPythonで、(*a, b)を使用することはできません。

[c for a,b in x for c in a+(b,)] 
+0

あなた! – xoihiox

関連する問題