循环:
循环(Loop)的作用是将一段代码重复执行多次。在Python中,循环结构主要有以下两种结构:
1.while循环:
while语句能够让你在条件为真的前提下重复执行某块语句。while语句是循环(Looping)语句的一种。while语句同样可以拥有else子语句作为可选项。
语法:
while 条件:
变量改变公式
代码块
例如:
a = 10
while a>0:
#变量不断改变,为了满足条件,避免进入死循环
a -= 1
print(a)
- while也可以是无限循环
2.for循环:
for循环是Python中另一种实现循环的形式,其结构为:
语法:
for 变量 in 遍历结构:
代码块
for循环的执行流程:
for循环的用法:
1.字符串遍历:
str = "hello python"
for i in str:
print(i)
#输出结果是:
'''
h
e
l
l
o
p
y
t
h
o
n
'''
2.列表遍历:
list01 = ["Python","Java","Hadoop"]
for i in list01:
print(i)
#输出结果为:
'''
Python
Java
Hadoop
'''
3.字典遍历:
dict01 = {"天龙八部":"段誉","倚天屠龙记":"张无忌","九阴真经":"周芷若","射雕英雄传":"郭靖"}
"""
1.用普通遍历,只能打印key
天龙八部
倚天屠龙记
九阴真经
射雕英雄传
"""
for i in dict01:
print(i)
"""
2.字典.items() 返回一个元组("天龙八部","段誉")
('天龙八部', '段誉')
<class 'tuple'>
('倚天屠龙记', '张无忌')
<class 'tuple'>
('九阴真经', '周芷若')
<class 'tuple'>
('射雕英雄传', '郭靖')
<class 'tuple'>
"""
for t in dict01.items():
print(t)
print(type(t))
"""
3.获取单独的key和value,就是想办法把元组拆分,返回基本数据类型
把元组赋值给两个变量
天龙八部
<class 'str'>
段誉
<class 'str'>
"""
for k,v in dict01.items():
print(k)
print(type(k)) #Str
print(v)
print(type(v)) #Str
4.set集合遍历:
set01 = {1,2,3,4}
for i in set01:
print(i)
3.berak和continue
break跳出并结束当前整个循环,不执行循环后的语句
continue结束当次循环,继续执行后续次数循环
执行流程:
break:
continue:
例如:
for i in [1,2,3,4,5]:
if i==2:
break
print(i) #1
for i in [1,2,3,4,5]:
if i==2:
continue
print(i) #1
"""
1
3
4
5
"""
- 可以看到当循环遇到break的时候,整个代码就结束了,不会再输出后面的代码。
- 当代循环遇到continue的时候,我们看到只有2没有输出,除了2以外全部输出了。
4.循环加else:
语法:
for 变量 in 遍历结构:
代码块
else:
代码块
执行流程是: 1.先执行完for循环 2.执行完以后执行else
同理,while也可以和else一起使用
while <条件> :
<语句块1>
else :
<语句块2>
#循环结束后,会执行else的代码
练习:
1. 定义一个函数,接收n多个数字,求这些参数数字的和
function 方法
*代表可以接受多个数据
2.定义一个函数,传入一个列表[1,2,3,4,5,6,7],把列表中的奇数返回,返回一个新的列
3.定义一个函数,传入用户id返回True False
4.定义一个函数,统计字符串中有几个字母,几个数字,几个空格,几个其他字符,并返回结果