用生成器函数遍历一个嵌套列表
假设有如下嵌套列表:
items = [1, 2, [3, 4, [5, 6], 7], 8]
想要把列表中所有元素输出为一系列单独的值(而不是有的是值,有的是子列表)
1 | from collections import Iterable |
效果:
1 | for x in get_index(items): |
使用isinstance判断子元素是否可迭代,如果可迭代,使用yield from将这个可迭代对象进行递归,直到所有元素产出
该方法来自《Python Cookbook》一书