目录

前言

一、for循环

1.for循环打印

2.for循环遍历

二、嵌套for循环

三、for循环-range方法

1.range生成序列

2.for..range遍历

总结


前言

在编程中,循环结构是构建复杂逻辑的基础之一。Python作为一门功能强大的编程语言,其内置的for循环为我们提供了一种高效且直观的方式来遍历集合中的元素。无论是处理数据、生成序列还是实现算法,for循环都扮演着至关重要的角色。本文旨在深入探讨Python中for循环的工作原理、使用技巧以及最佳实践


一、for循环

Python的for循环可以遍历和循环,其基本语法为:

for item in interable:
    执行语句

for、in是关键字,item变量名,interable:可迭代数据类型(字符串、列表、元组、集合、字典等)
for循环是通过interable长度来控制循环的次数
循环体要有缩进

1.for循环打印

# 注意:会在每一次循环的时候,把遍历出来的数据,一个个的赋值给前面设定的变量名
# 1.循环次数根据可遍历的数据 长度 来决定
# 2.变量名 -- 每次循环都可以获取到对应遍历出来的数据
data = 'python'
for i in lst:
    print(i)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
p
y
t
h
o
n

2.for循环遍历

# 使用for循环,分别遍历字符串、元组、列表、字典

# 遍历字符串
s = 'hello'
for i in s:
    print(i)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
h
e
l
l
o

# 遍历列表
lst = [True, 'hello', 100, [1, 2, 3]]
for i in lst:
    print(i)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
True
hello
100
[1, 2, 3]

# 遍历元组
tup = (3.14, 'python', ('muzi', 'selenium'), [1, 2, 3])
for i in tup:
    print(i)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
3.14
python
('muzi', 'selenium')
[1, 2, 3]


# 遍历字典-key
dit = {'id': 1001, 'name': 'python', 'pwd': '12345', 'score': [80, 90, 100]}
for i in dit:
    print(i)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
id
name
pwd
score

# 遍历字典-value
dit = {'id': 1001, 'name': 'python', 'pwd': '12345', 'score': [80, 90, 100]}
for i in dit.values():
    print(i)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
1001
python
12345
[80, 90, 100]

# 遍历字典-key, value
dit = {'id': 1001, 'name': 'python', 'pwd': '12345', 'score': [80, 90, 100]}
for i in dit.items():
    print(i)
或
for key, value in dit.items():
    print(key, value)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
('id', 1001)
('name', 'python')
('pwd', '12345')
('score', [80, 90, 100])
或
id 1001
name python
pwd 12345
score [80, 90, 100]

二、嵌套for循环

我们已经搞定了单层for循环,如果遇到了嵌套的字典、元组、列表,则需要获取到每个元素并进行打印,那么我们要用到嵌套for循环

# 获取lst里的每一个数据,并按行输出
lst = [[1, 2, 3], ['a', 'b', 'c'], ['甲', '乙', '丙', '丁']]
for i in lst:
    print(i)
    for j in i:
        print(j)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
[1, 2, 3]
1
2
3
['a', 'b', 'c']
a
b
c
['甲', '乙', '丙', '丁']
甲
乙
丙
丁

# 获取dic里的信息,并且把url的value值, data中嵌套字典的每个value值,按行输出
dic = {'url': 'https://www.baidu.com', 'data': {'username': 'admin', 'pwd': '123456'}}
for i in dic:
    print(dic[i])
    if i == 'data':
        for j in dic[i].values():
            print(j)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
https://www.baidu.com
{'username': 'admin', 'pwd': '123456'}
admin
123456

下面有几个for循环经典案例,可以尝试下打印

三、for循环-range方法

range在Python中可以帮助我们快速生成一个特定范围的数字列表
range用法:
1. range(n,m,k):相当于其他函数里面的for循环。n:初始值,m:结束值,k:步长,会生成初始值为n,结束值为m-1,递增或递减的整数序列
2. range(n,m):默认会生一个n 到m-1的整数序列,对于这个整数序列,我们可以通过list()函数转化为列表类型的数据。
3. range(n):默认会生一个0到n-1的整数序列,对于这个整数序列,我们可以通过list()函数转化为列表类型的数据。

1.range生成序列

# 生成1,2,3,4...10的序列
res1 = range(1,11,1)
res2 = list(res1)
print(res2)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 生成1,2,3,4...10的序列
res3 = range(1,11)
res4=list(res3)
print(res4)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 生成0,1.2,3.4...10的序列
res5 = range(11)
res6 = list(res5)
print(res6)
>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

2.for..range遍历

# 1. 使用for..range,遍历字符串 s='Python'
s = 'Python'
for i in range(len(s)):
    print(s[i], end='\t')
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
P	y	t	h	o	n

# 2. 使用for..range,遍历元组 t=(1,2,3)
t = (1, 2, 3)
for i in range(len(t)):
    print(t[i], end='\t')
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
1	2	3

# 3. 使用for..range,遍历列表 l=['a','b','c']
l = ['a', 'b', 'c']
for i in range(len(l)):
    print(l[i], end='\t')
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
a	b	c	

# 4. 获取tup里的每个数据,按行输出,并把index=2的元素,逐字输出
tup=(('test','Python','hello'),('res','web','api'))
for i in tup:
    print(i)
    for j in range(len(i)):
        # print(j)
        if j == 2:
            for k in i[j]:
                print(k)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
('test', 'Python', 'hello')
h
e
l
l
o
('res', 'web', 'api')
a
p
i
"""
九九乘法表
1 * 1 = 1
1 * 2 = 2, 2 * 2 = 4
1 * 3 = 3, 2 * 3 = 6, 3 * 3 = 9
...
1 * 9 = 9, 2 * 9 = 18, 3 * 9 = 27 ...
"""

for i in range(1, 10):
    for j in range(1, i + 1):
        print(f"{j} * {i} = {i * j}", end="  ")
    print()  # 换行
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
输出结果:
1 * 1 = 1  
1 * 2 = 2  2 * 2 = 4  
1 * 3 = 3  2 * 3 = 6  3 * 3 = 9  
1 * 4 = 4  2 * 4 = 8  3 * 4 = 12  4 * 4 = 16  
1 * 5 = 5  2 * 5 = 10  3 * 5 = 15  4 * 5 = 20  5 * 5 = 25  
1 * 6 = 6  2 * 6 = 12  3 * 6 = 18  4 * 6 = 24  5 * 6 = 30  6 * 6 = 36  
1 * 7 = 7  2 * 7 = 14  3 * 7 = 21  4 * 7 = 28  5 * 7 = 35  6 * 7 = 42  7 * 7 = 49  
1 * 8 = 8  2 * 8 = 16  3 * 8 = 24  4 * 8 = 32  5 * 8 = 40  6 * 8 = 48  7 * 8 = 56  8 * 8 = 64  
1 * 9 = 9  2 * 9 = 18  3 * 9 = 27  4 * 9 = 36  5 * 9 = 45  6 * 9 = 54  7 * 9 = 63  8 * 9 = 72  9 * 9 = 81  


总结

在Python编程中,for循环是一种不可或缺的控制结构,它允许我们遍历序列(如列表、元组、字符串)或可迭代对象(如集合、字典、文件等)中的元素,并对每个元素执行特定的操作。for循环的简洁性和灵活性使其成为处理数据、构建算法和自动化任务的强大工具。通过理解和运用for循环,我们可以编写更高效、更优雅的Python代码,提高编程效率和代码质量。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐