python中的初学者异常处理

时间:2016-04-05 13:28:41

标签: python exception

def flatten(nstd_list):
    for item in nstd_list:
        try:
            yield from flatten(item)
        except TypeError:
            yield item

我是python的初学者,请你在这里解释一下这是如何工作的(一步一步)

1 个答案:

答案 0 :(得分:0)

您可以将yield作为return,因此代码是从嵌套列表中获取每个元素。

例如:

nstd_list = [[1],2]

第一轮:项目为[1]和2,因此yield flatten([1])2

第二轮:item为1,返回1