1.关于控制结构
控制结构主要包括:顺序结构、选择结构、循环结构。描述如下:
名称 | 描述 | python语句 |
顺序结构 | 按照线性顺序依次执行的一种程序结构 | 赋值语句等 |
条件结构 | 根据条件判断结果而选择不同执行路径的一种程序结构 | if |
循环结构 | 需要反复执行某个功能而设置的一种程序结构 | for/while |
通过5个简单实例,熟悉下python控制结构。
2.实例
实例1:求圆的半径和面积
#from...import语句允许我们直接导入所需的项,避免了冗长的模块名前缀,使代码更加简洁。
from math import pi
r=float(input("输入圆的半径:"))
#计算圆的周长
perimeter=2*pi*r
#计算圆的面积
area=pi*(r**2)
print(f"圆的周长:{perimeter},圆的面积:{area}")
输出结果:
输入圆的半径:1.5
圆的周长:9.42477796076938,圆的面积:7.0685834705770345
实例2:找出符合条件的人
people={
"li lei":{"age":20,"sex":"male","area":"shang hai"},
"song lei":{"age":33,"sex":"male","area":"chong qing"},
"zhang lei":{"age":21,"sex":"male","area":"hang zhou"},
"han mei mei":{"age":21,"sex":"female","area":"shang hai"}
}
area_set={"shang hai","chong qing"}
names=[]
for key,value in people.items():
area=value['area']
sex=value['sex']
age=value['age']
# 在area_set集合中,男性,年纪[10,20]或者[30,40]
if (area in area_set ) and (sex=='male') and ((age>=10 and age<=20) or (age>=30 and age<=40)):
names.append(key)
print(names)
输出结果:
['li lei', 'song lei']
实例3:找出不同年龄段的人
people={
"li lei":{"age":20,"sex":"male","area":"shang hai"},
"song lei":{"age":33,"sex":"male","area":"chong qing"},
"zhang lei":{"age":21,"sex":"male","area":"hang zhou"},
"han mei mei":{"age":21,"sex":"female","area":"shang hai"}
}
area_set={"shang hai","chong qing"}
names={"1-10":[],"11-20":[],"21-30":[],"31-40":[],"41-100":[]}
for key,value in people.items():
age=value['age']
if age<=10 :
names['1-10'].append(key)
elif age<=20 :
names['11-20'].append(key)
elif age<=30 :
names['21-30'].append(key)
elif age<=40 :
names['31-40'].append(key)
else:
names['41-100'].append(key)
print(names)
输出结果:
{'1-10': [], '11-20': ['li lei'], '21-30': ['zhang lei', 'han mei mei'], '31-40': ['song lei'], '41-100': []}
实例4:直到输入'quit'退出
message=input("请输入:")
while message!='quit':
print(message)
message = input("请输入:")
print('结束')
#相同功能实现,break跳出循环
message=input("请输入:")
while True:
if message=='quit':
break
print(message)
message = input("请输入:")
print('结束')
输出结果:
请输入:123
123
请输入:456
456
请输入:quit
结束
实例5:打印1-10的奇数
number=0
while number<10:
number += 1
if number %2 ==0:
continue
print(number)
输出结果:
1
3
5
7
9