无需使用递归即可平铺列表的Python程序
当需要不使用递归技术而将列表展平时,可以使用lambda函数,“ sum”方法,“ map”方法和“ isinstance”方法。
列表可用于存储异构值(即,任何数据类型的数据,例如整数,浮点数,字符串等)。
'isinstance'方法检查以查看给定参数是否属于特定数据类型。
匿名函数是没有名称定义的函数。通常,Python中的函数是使用'def'关键字定义的,而匿名函数是通过'lambda'关键字定义的。它采用单个表达式,但可以采用任意数量的参数。它使用该表达式并返回其结果。
映射函数将给定的函数/操作应用于可迭代项(例如列表,元组)中的每个项目。它返回一个列表作为结果。
“求和”方法将迭代器中存在的数值相加。
示例
以下是相同的演示-
my_list = [[[11,[[32]],[[[53]]]],[[64],75]], [[6, 89, 99]]]输出结果flattened_list = lambda my_list: sum(map(flattened_list,my_list),[]) if isinstance(my_list,list) else [my_list]
print("原始列表是: ")
print(my_list)
print("展平的列表是:")
print(flattened_list(my_list))
原始列表是:[[[11, [[32]], [[[53]]]], [[64], 75]], [[6, 89, 99]]]
展平的列表是:
[11, 32, 53, 64, 75, 6, 89, 99]
解释
定义了一个嵌套列表,并将其显示在控制台上。
使用“ sum”方法对元素求和,并使用“ map”方法将其应用于每个元素。
该操作的结果分配给一个变量。
它在控制台上显示为输出。
以上是 无需使用递归即可平铺列表的Python程序 的全部内容, 来源链接: utcz.com/z/340162.html