Python循环速查表
由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!
我以前用的是 C++,所以 Python 的循环让我很困惑——我指的是 for 循环。在 C++ 里,你可以精确地告诉循环从初始化、条件到递增的具体行为。而在 Python 里,如果你只是想让它按顺序打印出元素(并且只打印元素),你只需要用简单的语法来写循环语句。这篇文章不是写给编程新手的,而是写给 Python 新手的(Python 爱好者?或者说是 Python 新手?)。
我只需遍历列表并打印其中的值:
arr2 = [10, 20, 30, 40, 50, 60]
for i in arr2:
print(i)
二、简单地遍历列表并打印值和索引:
arr2 = [10, 20, 30, 40, 50, 60]
for i, num in enumerate(arr2):
print(i, num)
三、反向迭代:
arr2 = [10, 20, 30, 40, 50, 60]
for val in reversed(arr2):
print(val)
IV. 仅使用索引进行迭代:
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(len(arr2)):
print(i)
V. 反向遍历索引:
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(len(arr2), 0, -1):
print(i)
VI. 反向迭代索引和值:
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(len(arr2), 0, -1)::
print(i, arr2[i])
VI. 从索引 3 迭代到索引 5:
arr2 = [10, 20, 30, 40, 50, 60]
for val in arr2[3:6]:
print(val)
VII. 使用索引从索引 3 迭代到索引 5:
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(3,6):
print(i)
IX. 从索引开始向后迭代,并可访问索引(而不仅仅是值):
arr2 = [10, 20, 30, 40, 50, 60]
for i in range(5,0,-1):
print(i)
X. 使用 numerate 进行循环:
# this one is probably my favorite
arr2 = [10, 20, 30, 40, 50, 60]
for i, val in enumerate(arr2):
print(i, val)
这段话直接从我的笔记里复制粘贴过来的,希望你能看懂。
有没有人觉得Python的循环很奇怪?你们在Python中使用循环的方式有什么不同吗?欢迎留言告诉我。
特别感谢Ben Sinclair和rhymes对本文的贡献。
文章来源:https://dev.to/shahzzoda/python-loops-cheat-sheet-29gj