Coming from C++, Python loops confused me--I'm talking about for loops, in specific. In C++, you tell a loop exactly how to behave from the initializer, condition, to the increment. In Python you write it in English. That is if you simply want it to print the items (and only the items) in the order it's in. This isn't a blog post for beginner coders, only new pythoners (pythonists? snake charmers??)
I. simply iterate through the list and print the values:
arr2 = [10, 20, 30, 40, 50, 60]
for i in arr2:
print(i)
II. simply iterate through list and print the values and the indexes:
arr2 = [10, 20, 30, 40, 50, 60]
for i, num in enumerate(arr2):
print(i, num)
III. iterate backwards:
arr2 = [10, 20, 30, 40, 50, 60]
for val in reversed(arr2):
print(val)
IV. iterate with the indexes alone:
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(len(arr2)):
print(i)
V. Iterate the index backwards:
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(len(arr2), 0, -1):
print(i)
VI. iterate with the index and value backwards:
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(len(arr2), 0, -1)::
print(i, arr2[i])
VI. iterate from the index 3 to the index 5:
arr2 = [10, 20, 30, 40, 50, 60]
for val in arr2[3:6]:
print(val)
VII. iterate from the index 3 to the index 5 with the index:
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(3,6):
print(i)
IX. iterate from the indexes backwards with access to the index (not just the value):
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(5,0,-1):
print(i)
X. looping using enumerate:
# this one is probably my favorite
arr2 = [10, 20, 30, 40, 50, 60]
for i, val in enumerate(arr2):
print(i, val)
This is literally copied and pasted from my notes. Hope it makes sense.
Did anyone else think Python loops were weird? Do you loop any of these differently in Python? Comment to let me know.
Special thanks to Ben Sinclair and rhymes for their contributions to this article.
Top comments (6)
Hi Shahzoda! Welcome to DEV and thanks for your first post. C++ and Python have a long standing relationship and it's nice to see new Pythonistas coming from there ;-)
A couple of tips:
your example can become:
also, if you add
python
to the ticks you can enable syntax highlighting:Can't wait for you to discover list comprehensions ;-)
You're incredible!! Thank you for the syntax highlight tip. I learned list comprehensions already, they're really cool but the "dont care" variable is a new one too me. Really cool stuff.
Instead of doing
range(1,6)[::-1]
you can pass a negative step into the function itself likerange(5,0,-1)
which might be more readable depending on the context.That is much more readable. Thank you for your insight!
Very nice, concise examples.
thank you!!!!