range(len(day))
with enumerate(day)
123 ]
124 for ar in articles:
125 head.append(ar["title"])
126 for i in range(len(day)):127 speak(f"today's {day[i]} news is: {head[i]}")
128
129
Using range(len(...))
is not pythonic. Python does not have not index-based loops. Instead, it uses collection iterators.
Python has a built-in method enumerate
which adds a counter to an iterable.
Using this, you can access the counter and the value from the iterable at the same time.
It is therefore recommended to replace range(len(...))
with enumerate(...)
.
for index in range(len(mylist)):
...
for index, element in enumerate(mylist):
...