python05-流程结构-循环结构-for循环
今日学习
循环结构之for循环
for重要只是
range 方法实操
for + break
for + continue
for + else
循环结构之for循环
- 在python中,只有for 和 while 两种循环体
- for 最常用
- for 循环又称为迭代循环,可迭代对象可以是字符串(str),列表(list),字典(dict),元组(tp)。
- for 循环能做到的,while循环也能做。
- 针对变量名的命名 如果带取值的数据有明确的指向 最好见名知意
- for name in 学习姓名名单
- for addr in 地址信息
- 如果没有明确的指向 可以使用常见的字母
- i j k item v ...
语法结构
for 变量名 in 可迭代对象: 字符串,列表,字典,元组
代码(for循环的循环体代码)
for item in [1, 2, 3, 4, 5]:
print(item)
-------------------------------结果-----------------------
1
2
3
4
5
#常见取值操作
1.前戏
l1 = ['jason', 'kevin', 'tony', 'oscar']
# 循环打印出列表中每一个数据值
# 列表取值:索引
# while循环打印
# num = 0
# while num < 4:
# print(l1[num]) # 每次循环的时候索引应该自增1
# num += 1
# for循环
for i in l1:
print(i)
"""
for循环能够做到的事情while循环都可以做到
但是for循环的语法结构更加简单 尤其擅长循环取值
"""
3.常见取值操作
-------------------------"""for循环列表[list],默认每次取到整个"""----------------------------
l1 = ['jason', 'kevin', 'tony', 'oscar']
num = 0
while num < 4:
print(l1[num]) # 每次循环的时候索引应该自增1
num += 1
#for循环
for i in l1:
print(i)
-------------------- """for循环字典(dict) 默认只能取到字典的key"""-----------------------------
user_dict = {
'username': 'jason',
'pwd': 123,
'age': 18
}
for i in user_dict:
print(i)
-----------------# """for循环字符串(str) 默认每次取单个字符"""-------------------------
desc = 'hello baby,你会感谢少年奋斗的你'
for i in desc:
print(i)
-------------------- """for循环元组数据与列表一致 默认都是单个数据值"""----------------
t = (11, 22, 33, 44, 55) #小括号和花括号
for i in t:
print(i)
s1 = {11,22,33,44,45}
for i in s1:
print(i)
range方法
range是python中一个内置类,在Python3中,range用于产生一个可迭代的对象。
可以理解为帮我们快速产生一个包含多个数据值的列表
定义
range(start,stop,step)
for i in range(5): # 如果括号内只有一个数字 那么就是从0开始计算增加(顾头不顾尾 左包含右不包含)
print(i)
for i in range(3, 10): # 括号内有两个数字 第一个是起始位置(包含) 第二个是终止位置(不含)
print(i)
for i in range(0, 100, 25): # 括号内有三个数字 最后一个是数据的间隔数(等差数列)
print(i)
"""
在python2中有两个
range()
直接产生一个列表 当数据量很大的时候可能会造成内存溢出(爆满)
xrange()
其实就是python3里面的range方法
在python3中只有一个
range()
类似于是一个工厂 什么时候要什么时候创建给你 节省内存
"""
for + break
# 1-10,打印输出1~6
for i in range(1,11):
if i == 7: #7结束
break
print(i)
"""
break也能够结束所在的那一层for循环
"""
for + continue
# 1-10 7跳过
for i in range(1, 11):
if i == 7:
continue
print(i)
"""
continue也能够结束所在的那一次for循环 直接开始下一次
"""
for+else
for i in range(10):
print(i)
if i == 5:
break
else:
print('嘿嘿嘿 猜猜我什么时候执行') -----------for循环执行结束才会执行else
"""
else配合for一起使用 当for循环没有被强制结束的情况下 循环体结束之后运行else子代码
"""