Skip to content

for 遍历

for 语句

在计算机科学里,遍历的一种,指的是按照某种规则,不重复地访问某个对象的所有内容的过程。

for

语法

python
>>> for item in 'hello world !':
...     print(item)
... 
h
e
l
l
o

w
o
r
l
d

!

for 比较常用的方式是与 range 搭配使用,例如:

python
>>> for i in range(5):  
...     print(i) 
... 
0
1
2
3
4
>>>

range

range() 函数可创建一个整数列表,一般用在 for 循环中。

函数语法:

python
range(start, stop[, step])

参数说明:

  • start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
  • stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5)[0, 1, 2, 3, 4] 没有 5
  • step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

起始值与结束值

python
>>> list(range(5))  
[0, 1, 2, 3, 4]
>>> list(range(0, 5)) 
[0, 1, 2, 3, 4]
>>> list(range(1, 6)) 
[1, 2, 3, 4, 5]

步长

python
>>> list(range(0, 5)) 
[0, 1, 2, 3, 4]
>>> list(range(0, 5, 1)) 
[0, 1, 2, 3, 4]
>>> list(range(0, 5, 2)) 
[0, 2, 4]

for 遍历可迭代对象

for 可以迭代所有可迭代对象(字符串、列表、元组、集合、字典)

python
for num in list(range(1000)):
    print(num)

for 案例

打印三角形

python
"""
*
**
***
****
*****

要打印的效果:正右角形
    *
   **
  ***
 ****
*****
"""

print('-------打印正左角形--------')
for i in range(1, 6):
    for j in range(1, i + 1):
        print('*', end='')
    print()
参考答案
python

"""请在下方实现代码逻辑"""

print('-------打印正右角形--------')
for i in range(1, 6):
    for k in range(6 - i):
        print(' ', end='', sep='')
    for j in range(1, i + 1):
        print(f'*', end='')
    print()

九九乘法表

python
"""for 实现九九乘法表"""
for i in range(1, 10, 1):
    for j in range(1, i + 1):
        print(f"{j}*{i}={j * i}\t", end='')
    print()

案例:用 for 迭代获取所有水仙花数

python
for num in range(1000):
    print(num)