python控制流主要包含
if分支:不同情况执行不同内容
for循环:每一个对象进项相同的操作
while循环:无法确定循环对象时
目录
一、if分支
if分支判别某个条件是否满足时所对应的执行内容。
二分支:
# 返回绝对值
x = -3
if x >= 0:
print(x)
else:
print(-1*x)
多分支:
- else if 在Python中缩写为 elif
- 关键词后都要加 :
- 注意缩进
- else后不要加上具体条件
# 返回成绩对应的等级
score = 68
if score < 60:
print('不及格')
elif score < 70:
print('合格')
elif score < 80:
print('良好')
else:
print('优秀')
二、 for循环
为了解决重复性的工作。
#列表每个元素平方
list7=[11,6,88,9,42,26,45]
result=[]
for i in list7:
y=i**2
result.append(y)
print(result)
out:
[121, 36, 7744, 81, 1764, 676, 2025]
指数运算可以用两个**表示;
append将每个元素的计算结果依次存入result中
for中嵌套条件判断:
#计算1到1000之间的奇数和
s1_1000=0
for i in range(1,1001):
if i%2==1:
s1_1000=s1_1000+i
else:
pass
print('1到1000之间的奇数和%d:'%s1_1000)
out:
1到1000之间的奇数和250000
- %(值1,值2,值3),%s、%f、.2f%
#奇数三次方减二次方
list7=[11,6,88,9,42,26,45]
result2=[i**3-i**2 for i in list7 if i%2==1]
print(result2)
out:
[1210, 648, 89100]
简写
[expression for i in iterable if condition]
三、while循环
更适合无具体迭代对象的重复性操作,与for的不同如下例子,登录密码
while循环
#使用while循环登录
while True:
user=input('请输入用户名:')
password=int(input('请输入密码:'))
if (user=='test')&(password==123):
print('感谢您的登录!')
break
else:
print('错误!请重新登陆')
out:
请输入用户名:test
请输入密码:132
错误!请重新登陆
请输入用户名:test
请输入密码:123
感谢您的登录
- input 函数套在int函数中,为了将其转换成整数型
- 且& 或|
- break退出最近的循环
for 循环
#使用for循环登录
for i in range(1,5):
user=input('请输入用户名:')
password=int(input('请输入密码:'))
if (user=='test')&(password==123):
print('感谢您的登录!')
break
else:
if i<5:
print('错误!您今日还剩%d次登录机会'%(5-i))
else:
print('请于24小时后再尝试登录')
out:
请输入用户名:test
请输入密码:111
错误!您今日还剩4次登录机会
请输入用户名:test
请输入密码:333
错误!您今日还剩3次登录机会
请输入用户名:test
请输入密码:123
感谢您的登录!