def flatten(nstd_list):
for item in nstd_list:
try:
yield from flatten(item)
except TypeError:
yield item
我是python的初学者,请你在这里解释一下这是如何工作的(一步一步)
答案 0 :(得分:0)
您可以将yield
作为return
,因此代码是从嵌套列表中获取每个元素。
例如:
nstd_list = [[1],2]
第一轮:项目为[1]和2,因此yield flatten([1])
和2
第二轮:item为1,返回1