格式:
if 表达式1:
语句1
else:
语句2
代码示例:
num=eval(input('请输入中奖号码:'))
if num==987654:
print('中奖了')
else:
print('没中奖')
# 上面的代码可以使用条件表达式来简化
result='中奖了' if num==987654 else '没中奖'
print(result)
# 进一步简化
print('中奖了' if num==987654 else '未中奖')
代码结构:
if 表达式1:
语句块1
elif 表达式2:
语句块2
elif 表达式n:
语句块n
else:
语句块n+1
代码实例:
score=eval(input('请输入您的成绩:'))
if score<0 or score>100:
print('成绩有误')
elif 0<=score<60:
prints('不及格')
elif 60<=score<70:
print('D')
elif 70<=score<80:
print('C')
elif 80<=score<90:
print('B')
else:
print('A')
1、
if 表达式1:
if 表达式2:
语句块1
else:
语句块2
2、
if 表达式1:
if 表达式2:
语句块1
else:
语句块2
else:
if 表达式3:
语句块3
else:
语句块4
要同时满足多个条件:and
if 条件1 and 条件2:
语句块1
else:
语句块2
多个条件有一个满足即可:
if 条件1 or 条件2:
语句块1
else:
语句块2
c中的switch加强版
s=input('请输入成绩等级:')
match score:
case 'A':
print('优秀')
case 'B':
print('中等')
case 'c':
print('及格')
case 'D':
print('不及格')
python中有两类:
1、遍历循环结构for
2、无限循环结构while
for 循环变量 in 遍历对象:
语句块
截图待上传
代码示例:
range(n,m)函数,Python内置函数,产生一个[n,m)的整数序列,包含n不包含m
# 遍历字符串
for i in 'hello':
print(i)
# range(n,m)函数,Python内置函数,产生一个[n,m)的整数序列,包含n不包含m
for i in range(1,11):
if i%2==0:
print(i,'为偶数')
# 利用遍历for循环来计算1-10的累加和
sum=0
for i in range(1,11):
sum+=i
print(sum)
# 判断100到999之间的水仙花数
'''
什么叫水仙花数:
153=1*1*1+5*5*5+3*3*3
'''
for i in range(100,1000):
a=eval(str(i)[0])
b=eval(str(i)[1])
c=eval(str(i)[2])
if a**3+b**3+c**3==i:
print(i,'是水仙花数')
# 语句块2只有在循环正常结束后才能执行到,遇到break就是非正常
for 循环变量 in 遍历对象:
语句块1
else:
语句块2
示例:
s=0
for i in range(1,11):
s+=i
else:
print('1到10的累加和为:',s)
while 表达式:
语句块
while循环的四个步骤:
1、初始化变量
2、条件判断
3、语句块
4、改变变量
代码示例:
1、
# 1、初始化变量
ans=input('今天要上课吗?y/n\n')
# 2、条件判断
while ans=='y':
print('好好学习') # 3、执行语句块
# 4、改变变量
ans = input(('今天要上课吗?y/n\n'))
2、
# 1-100之间的累加和
s=0
# 1、初始化变量
i=1
while i<=100: # 2、条件判断
s+=i # 3、执行语句块
i+=1 # 4、改变变量
print(s)
while 表达式:
语句块1
else: # 若while整个执行完毕了,中途没有遇到break中断的情况,就会执行else的语句块2
语句块2
代码示例:
# 1-100之间的累加和
s=0
# 1、初始化变量
i=1
while i<=100:
s+=i
i+=1
else:
print(s)
# 使用无限循环模拟用户登录
# 1、初始化变量
i=0
# 2、条件判断
while i<3:
# 3、执行语句块
user_name=input('请输入用户名:')
pwd=input('请输入密码:')
if user_name=='a' and pwd=='a':
print('登录成功')
i=8 # 4.1、改变变量
else:
if i<2:
print('还有',2-i,'次机会')
i+=1 # 4.2、改变变量
if i==3:
print('输入错误')
循环结构也可以互相嵌套,实际使用中建议不超过3层
遍历循环for和无限循环while之间可以相互嵌套
# 长方形
for i in range(1,4): # 外层循环控制行数
for j in range(1,5): # 内层循环控制列数
print('*',end='')
print('')
print('-'*66)
# 直角三角形
for i in range(0,5):
for j in range(0,i+1):
print('*',end='')
print('')
print('-'*66)
# 倒直角三角形
for i in range(0,5):
for j in range(0,5-i):
print('*',end='')
#print('')
print()
print('-'*66)
# 等腰三角形
for i in range(0,5):
for j in range(0,4-i):
print(' ',end='')
for j in range(0,i+1):
print('*',end='')
for j in range(0,i):
print('*',end='')
print()
7行实心菱形,5行空心菱形
# 实心菱形
for i in range(0,7):
if i<4:
for j in range(0,3-i):
print(' ',end='')
for j in range(0,2*i+1):
print('*',end='')
else:
for j in range(0,i-3):
print(' ',end='')
for j in range(0,(6-i)*2+1):
print('*',end='')
print()
print('-'*66)
# 空心菱形
for i in range(0,5):
if i<=(5//2):
j=2-i
k=(5-1)-j
else:
j=i-2
k=(5-1)-j
for m in range(0, 5):
if m == j or m == k:
print('*', end='')
else:
print(' ', end='')
print()
拓展:用户指定行号,输出实心菱形和空心菱形
# 拓展:用户指定行号,输出实心菱形和空心菱形
line=eval(input('请输入行号:'))
while line%2==0:
print('菱形的行号必须为奇数')
line = eval(input('请重新输入行号:'))
# 实心菱形
print('实心菱形:')
for i in range(0,line):
if i<=(line//2):
for j in range(0,line//2-i):
print(' ',end='')
for j in range(0,i*2+1):
print('*',end='')
else:
for j in range(0,i-line//2):
print(' ',end='')
for j in range(0,(line-1-i)*2+1):
print('*',end='')
print()
# 空心菱形
print('空心菱形:')
for i in range(0,line):
if i<= line//2:
k=line//2-i
m=(line-1)-k
else:
k=i-line//2
m=(line-1)-k
for n in range(0,line):
if n==k or n==m:
print('*',end='')
else:
print(' ',end='')
print()
用于跳出循环结构,通常与if搭配使用
while 表达式1:
执行代码
if 表达式2
break
代码实例:
i=0
while i<3:
usr=input('请输入用户名:')
pwd=input('请输入密码:')
if usr=='a' and pwd=='a':
print('密码正确,正在登录')
break
else:
if i<=2:
print('密码不正确,还有',2-i,'次机会')
i+=1
else:
print('3次均输入失败,无法登录')
for i in range(0,3):
usr=input('请输入用户名:')
pwd=input('请输入密码:')
if usr=='a' and pwd == 'a':
break
else:
print('密码不正确,还有',2-i,'次机会')
else:
print('3次均输入失败,无法登录')
continue的作用是用于跳过本次循环的后续代码,而继续执行下一次循环操作
通常和if一起使用
语法结构:
while 表达式1:
执行代码1
if 表达式2:
continue
执行代码2
代码示例:求1-100之间的偶数和
s=0
i=1
while i<=100:
if i%2==1:
i+=1
continue
s+=i
i+=1
print('1-100之间的偶数和是:',s)
语法结构:
for 循环变量 in 遍历对象:
执行代码
if 表达式:
continue
代码示例:
s=0
for i in range(1,101):
if i%2:
continue
s+=i
print('1-100之间的偶数和是:',s)
pass 是 保留字
在语法结构中只起到占位符作用,是语法结构完整,不报错
一般用在if、for、while、函数的定义、类的定义中
下面的代码块中,若没有pass,则会报错
if True:
pass
while True:
pass
拓展:产生随机数
import random
# 1和100指定随机数的范围
rand=random.randint(1,100)