python 列表裡的列表 列表的扁平化

2021-08-28 20:33:43 字數 882 閱讀 9710

目標:列表含有子列表展開成乙個列表,列表的扁平化

如:

[['智利', '葡萄牙', '德國']] 

轉換為

['智利', '葡萄牙', '德國']

# **實現

k1=[['智利', '葡萄牙', '德國']]

k2 = sum(k1, )

print(k2)

元素都為列表: 

lista = [['a'], ['b'], ['c', 'd']]

展開成lista1 = ['a', 'b', 'c', 'd']

命令:

lista1 = sum(lista, )

因為sum第二個引數的預設值是0, 0不能和列表相加,所以需要加入引數

元素包含str, 列表等型別:

此時sum方法就不行了。

listb = ['a', ['b'], ['c', 'd']]

展開成listb1 = ['a', 'b', 'c', 'd']

命令:

listb1 = [x for j in listb for x in j]

in [1]: a=[[1,2,3],[4,5,6],[7,8,9]]

in [2]: sum(a,)

out[2]: [1, 2, 3, 4, 5, 6, 7, 8, 9]

in [1]: from functools import reduce

in [2]: a=[[1,2,3],[4,5,],[6]]

in [3]: a=reduce(lambda x,y:x+y,a)

in [4]: a

out[4]: [1, 2, 3, 4, 5, 6]

python中的列表,列表的特性

列表中可以存放任意型別的資料 li 1,2,3,5,6,8 li 1,2,3,1,2,3,4 5,7 eg 將0 9這10個數字隨機列表 注 shuffle 方法將序列的所有元素隨機排序。print service 1 列表的反轉 print service 1 除了第乙個之外的其他元素 print...

Python入門之列表 列表的常規操作2

下面介紹列表的查詢 遍歷 判定 排序 亂序及反轉操作,列表的其他常規操作如增加刪除元素等詳見我的上篇部落格。8 查詢操作 8.1 獲取某個元素 name index 通過索引獲取 list1 1,3,5,8 print list1 1 查詢最後乙個元素,結果為8 8.2 獲取元素的索引 name.i...

python整數和列表 列表和整數Python

假設實際縮排如下 specialnum 10 def number move move number for elements in range len move number if specialnum move number 1 x move number.index specialnum y ...