只有一層嵌套的常見方法:
# 普通方法 list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]] list_2 = [] for _ in list_1: list_2 += _ print(list_2) # 列表推導 list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]] list_2 = [i for k in list_1 for i in k] print(list_2) # 使用sum list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]] list_2 = sum(list_1, []) print(list_2)
多層嵌套的問題只能用遞歸的方法:
def flat(nums): res = [] for i in nums: if isinstance(i, list): res.extend(flat(i)) else: res.append(i) return res