Skip to content Skip to sidebar Skip to footer

Trouble Unpacking List In A Customized Way

I'm trying to unpack some list which I've yielded within get_item() function. I know I can get desired result If I used return instead of yield. I've tried: def get_item(): yie

Solution 1:

As of Python 3.3, you can use yield from:

defget_item():
    yieldfrom ["k","y","t"]

if __name__ == '__main__':
    for item in get_item():
        print(item)

Output:

k
y
t

yield from is a new trick introduced in Python 3.3, a short part of it:

For simple iterators, yield from iterable is essentially just a shortened form of for item in iterable: yield item:

Solution 2:

Desired result you can get with * operator:

def get_item():
    yield ["k","y","t"]

if __name__ == '__main__':
    print('\n'.join(*get_item()))

Prints:

k
y
t

Solution 3:

Try Below:


def get_item():
    for _ in ["k","y","t"]:
        yield  _

if__name__== '__main__':
    for item in get_item():
        print(item)

Post a Comment for "Trouble Unpacking List In A Customized Way"