10.14PYTHON总结
if多分支结构
if多分支结构可以根据不同的条件做不一样的事情
if多分支结构有:
if-elif-else
不同条件之间存在:其中一个条件成的时候,别的条件一定不会成立
代码特点:
if 条件1: 代码段1 elif 条件2: 代码段2 elif 条件3: 代码段3 … else: 代码段N
执行特点:
如果前面的条件成立,那么后面的条件一定不会再判断 (后面的条件的判断是在前面的条件不成立的情况下进行的)
相关练习
根据分数打印:优秀(>=90)、良好([75, 90))、中等([60, 75))、不及格(<60)
score = 99
if score >= 90:
print('优秀')
elif score >= 75:
print('良好')
elif score >= 60:
print('中等')
else:
print('不及格')
当分数确定满足第一个条件时,后面条件就不再执行,所以不需要“75<=score<90 ”
单独使用多个if
条件之间存在:其中一个条件成立,其他的条件也可能成立
代码特点:
if 条件1: 代码段1 if 条件2: 代码段2 if 条件3: 代码段3 …
与前面不同的是,哪怕条件1符合,也需要执行一遍条件2
相关练习
根据输入的年纪范围打印成年或者未成年,如果年龄不在正常范围内(0~150)打印这不是人!。
age=18
if age<0 or age>150:
print("这不是人!")
elif age <18:
print("未成年")
else :
print("成年")
定义两个变量保存?个?的身?和体重,编程实现判断这个?的身材是否正常!(公式: 体重(kg) / (身?(m)的平?值 ) 在18.5 ~ 24.9之间属于正常。打印:正常、偏瘦、偏胖)
weight = 44
height = 1.55
A= weight / height ** 2
if A < 18.5:
print('偏瘦')
elif A > 24.9:
print('偏胖')
else:
print('正常')
根据数字的值打印奇数、偶数和4的倍数
num=20
if num %2:
print("奇数")
else:
print("偶数", end=" ")
if num %4 ==0:
print("4的倍数")
或者
num = 20
if num % 2:
print('奇数')
else:
if num % 4 == 0:
print('4的倍数', end=' ')
print('偶数')
三目运算
Python中的三目运算符
表达形式:
值1 if 表达式1 else 值2
先判断表达式1的结果是否为True,如果是,整个运算表达式的结果是值1,否则是值2
比如:
a = 100
x = 10 if a > 100 else 20
print(x)
相关练习
用变量result, 根据年龄值获取 ‘成年’ 或者 ‘未成年’
age = 14
result = '成年' if age >= 18 else '未成年'
print(result)
for循环
循环结构的意义在于让代码重复执行
for循环语法:
for 变量 in 序列: 循环体
说明:
for、in - 关键字;固定写法
变量 - 变量名(可以是已经定义的变量的变量名,也可以是没有定义过的变量的变量名)
序列 - 容器型数据类型的数据就是序列,例如:字符串、列表、字典、元组、集合、迭代器、生成器、range等
-
- 固定写法
循环体 - 结构上是和for保持一个缩进的一条或者多条语句(至少1条);逻辑上就是需要重复执行的代码。
执行过程:
让变量去序列中取值,一个一个的取,取完为止,每取一个值就执行一次循环体。for循环循环由序列中的元素的个数决定
与for循环密切相关的就是range函数,它是产生一个等差数列的数字序列的函数
它有三种形式:
range(N)
产生[0, N)步长为1的数字序列
range(3) -> 0, 1, 2 range(5) -> 0, 1, 2, 3, 4
range(M, N)
产生[M, N)步长为1的数字序列
range(1, 5)-> 1, 2, 3, 4 range(10, 21) -> 10, 11, 12,…, 20
range(M, N, step)
产生[M, N)步长为step指定值的数字序列
range(1, 5, 2) -> 1, 3 range(10, 20, 3) -> 10, 13, 16, 19 range(20, 14, -1) -> 20, 19, 18, 17, 16, 15
相关练习
控制for循环打印100次 ‘Python!’
for x in range(100):
print('Python!')
利用循环计算1+2+3+…+100的和
sum1 = 0
for x in range(1, 101):
sum1 += x
print(sum1)
统计1000以内能被3整除的数的个数
count = 0
for x in range(1, 1000):
if x % 3 == 0:
count += 1
print(count)
或者
count = 0
for x in range(3, 1000, 3):
count += 1
print(count)
统计1000以内能被3整除但是不能被7整除的数的个数
count = 0
for x in range(1, 1000):
if x % 3 == 0 and x % 7 != 0:
count += 1
print(count)
或者
count = 0
for x in range(3, 1000, 3):
if x % 7 != 0:
count += 1
print(count)
while循环
语法:
while 条件语句: 循环体
说明:
while - 关键字,固定写法
条件语句 - 任何有结果的表达式(不能是赋值语法)
-
- 固定写法
循环体 - 结构上和while保持一个缩进的一条或者多条语句;逻辑上就是需要重复执行的代码
执行过程:
先判断条件语句是否为True,如果为True就执行循环体,执行完循环体在判断条件语句是否为True, 为True又执行循环体, 以此类推,如果条件语句为False,循环就结束!
相关练习
打印10次 ‘hello!’
x = 0
while x < 10:
print('hello!')
x += 1
用while循环打印:2,5,8,11,14,17
x = 2
while
x < 18:
print (x)
x += 3
提示用户输入密码,直到密码输入正确为止
password = "123"
np = None
while np != password:
np =input("请输出密码")
for循环与while循环的区别在于前者知道循环次数而后者不清楚
continue与break
这两个只能在循环体里面使用
continue
当执行循环体的时候遇到了continue,那么这一次循环结束,直接进入下一次循环
break
执行循环体的时候如果遇到了break,那么整个循环直接结束
pw = '123456'
while True:
get_pw = input('请输入密码:')
if get_pw == pw:
break
|