How to create a function for recursively generating iterating functions

后端 未结 1 1994
误落风尘
误落风尘 2020-12-18 05:32

I currently have a bit of Python code that looks like this:

for set_k in data:
    for tup_j in set_k:
        for tup_l in tup_j:

The prob

相关标签:
1条回答
  • 2020-12-18 06:36
    def nfor(data, n=1):
        if n == 1:
            yield from iter(data)
        else:
            for element in data:
                yield from nfor(element, n=n-1)
    

    Demo:

    >>> for i in nfor(['ab', 'c'], n=1):
    ...     print(i)
    ...     
    ab
    c
    >>> for i in nfor(['ab', 'c'], n=2):
    ...     print(i)
    ...     
    a
    b
    c
    
    0 讨论(0)
提交回复
热议问题