Python基础09--循环结构-for
在编程中,循环结构是构建复杂逻辑的基础之一。Python作为一门功能强大的编程语言,其内置的for循环为我们提供了一种高效且直观的方式来遍历集合中的元素。无论是处理数据、生成序列还是实现算法,for循环都扮演着至关重要的角色。本文旨在深入探讨Python中for循环的工作原理、使用技巧以及最佳实践在Python编程中,for循环是一种不可或缺的控制结构,它允许我们遍历序列(如列表、元组、字符串)或
目录
前言
在编程中,循环结构是构建复杂逻辑的基础之一。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代码,提高编程效率和代码质量。
更多推荐
所有评论(0)