Is it possible to iterate dictionary in python using next()
. (I need to access keys and values). Also would it work for extendable dictionaries with non-fixed length?
CodePudding user response:
Use items
to get the pairs key/value and iter()
to be able to call next
content = dict(zip(range(10), range(10, 20)))
print(content) # {0: 10, 1: 11, 2: 12, 3: 13, 4: 14, 5: 15, 6: 16, 7: 17, 8: 18, 9: 19}
iterable = iter(content.items())
print(next(iterable)) # (0, 10)
print(next(iterable)) # (1, 11)
print(next(iterable)) # (2, 12)
print(next(iterable)) # (3, 13)
CodePudding user response:
Yes, it is possible to iterate over a dictionary using
next
(anditer
). In fact, this is how iteration works:- Obtain an iterator:
__it = iter(your_dict)
- Call
next(__it)
to retrieve the next key
- Obtain an iterator:
Iterating over a dictionary iterates over its keys:
list({1: 'hello', 2: 'world'}) == [1, 2]
. You should iterate overyour_dict.items()
to get pairs of keys and values