python列表获取元素_python获取列表内所有元素的快速方法?

from collections import Iterable # 导入Iterable类,以便下面判断对象是否可迭代

# 总的计算函数,函数会返回一个列表,包含输入可迭代对象中所有不可迭代对象(按顺序)

def get_item(total: Iterable) -> list:

# 创建用于计算的闭包

def calculate(lst: Iterable): # 传入一个可迭代对象

for item in lst:

# 如果其中元素不可迭代,说明到达嵌套列表底层。将这个元素加到储存最终结果的result列表中,用return结束此次递归

if not isinstance(item, Iterable): # 这里判断元素是否可以迭代

result.append(item)

return

# 如果元素依旧可以迭代,调用递归对这个元素进行计算

else:

calculate(item)

result = [] # 创建储存结果的列表

calculate(total) # 调用闭包计算

return result # 返回最终结果

a = [

[(55736,)],

[(55739,)],

[(55740,), (55801,)],

[(55748,)],

[(55783,), (55786,), (55787,), (55788,)],

[(55817,), (55821,)],

[(55818,)],

]

print(get_item(a))