2014-03-13 53 views
0

我有這樣的數據。 x是下面的列表。列表中的字符串重複

['197056942', '91004902', ['104608942', '95134582'], '91967062']

預期的結果應該是: 197056942|91004902|104608942|91967062 197056942|91004902|95134582|91967062

我試着使用zip但無法獲得正確的結果。它截斷數據。

zip(*x) [('1', '9', '104608942', '9'), ('9', '1', '95134582', '1')]

+0

這是Python代碼? –

回答

0

我試圖解決您的問題。這比我想象的要困難得多。 這是我的Python代碼。

input = ['1','2','3','4',['5','6','7'],'8','9',['10','11'],'12'] 
tmp = [[]] 
for i in input: 
    if isinstance(i, list): 
     tmp = [j+[k] for j in tmp for k in i] 
    else: 
     tmp = [j+[i] for j in tmp] 

output = ["|".join(i) for i in tmp] 

輸出:

>>> output 
['1|2|3|4|5|8|9|10|12', 
'1|2|3|4|5|8|9|11|12', 
'1|2|3|4|6|8|9|10|12', 
'1|2|3|4|6|8|9|11|12', 
'1|2|3|4|7|8|9|10|12', 
'1|2|3|4|7|8|9|11|12'] 
+0

感謝您獲取此信息。我完全沒有接近這一點。最後,我會在輸出中添加 ': print i' 應該將其轉換回行而不是List。 – user3327034