所以我有一個列表中的列表中的「合併」的列表:使用列表理解列表
每一個嵌套列表是相同的:前2個元素是由字母串,其餘都是字符串由數字組成。
我想所有的串號轉換爲花車和各相應的嵌套列表的串號集中到自己的列表(這最終是一個雙嵌套列表),所以最後的結果是這樣的:
final = [['abc','efg', [ 4.3, 5.7, 80085]], ['aba','bab', [ 1.0, 9.0, 3.0]] , ... , ... ]
所以我的方法是使用列表理解將字符串數字轉換爲浮點數,然後將這些數字和字母串分割成單獨的列表併合並它們。
bloop = [[float(x) for x in y[2:]] for y in woot]
bleep = [[x for x in y[:2]] for y in woot]
所以我結束了:
bloop = [[ 4.3, 5.7, 8005.0],[ 1.0, 9.0, 3.0], ... , ... ]
bleep = [['abc','efg'],['aba','bab'], ... , ... ]
這裏是我打破,似乎無法繞到我的頭「合併」這些名單。
final = []
for i in bleep:
final.append(i)
for i in bloop:
final.append(i)
不幸的是,這只是把名單在一起,例如:
[['abc','efg'],['aba','bab'],[ 4.3, 5.7, 8005.0],[ 1.0, 9.0, 3.0]]
什麼你問它這正是做... – jonrsharpe
邊注:'[[X中X Y [2]在活泉Y]'等同於'[ y [:2] for y in woot]' –
另一面說明:儘量不要濫用list理解。它可以在大多數情況下爲你節省幾個字符,但它也可能使你的代碼難以閱讀和緩慢。 –