python(8):手把手教会你Python中的分支和循环...ifwhilefor

it2022-05-05  151

Python作为最热门的语言,使我们每个人应该学习的一门技术! 本文针对初学者,我会用最容易的方式告诉你如何入门python!

文章目录

一、if语句1.if单分支语句2.if多分支语句3.if..else多分支语句4.if...elif...else多分支语句5.循环嵌套 二、while语句1.基本格式2.break和continue3.案例 三、 for循环

一、if语句


1.if单分支语句

格式:

if condiation: pass

练习:

salary = int(input('请输入你的工资:')) if salary < 3000: print('电动车')

2.if多分支语句

格式:

if condiation: pass if condiation2: pass if condiation3: pass ...

练习:

salary = int(input('请输入你的工资:')) if salary < 3000: print('电动车') if 3000 <= salary <= 10000: print('QQ') if 10000 < salary: print('奥迪')

3.if…else多分支语句

格式:

if condiation: pass if condiation2: pass else: pass

练习:

num=input('请输入数字:') if num>0: print('这是正数') else: print('这不是正数')

4.if…elif…else多分支语句

格式:

if condiation: pass elif condiation2: pass elif condiation3: pass ... else: #(可选) pass

练习:

score = float(input('输入你的英语四级成绩:')) if 0 <= score < 425: print('未通过四级') elif 425 <= score <= 750: print('恭喜通过四级考试!') else: print('输入成绩过高!')
if…if 和 if…elif区别如果你只想执行一个代码块。那么选择if-elif-else结构如果要运行多个代码块,选择多个if(多条件同时满足)


案例1:

# 案例练习----根据ASCII表来判断输入的字符是什么 content = ord(input('请输入一个字符:')) if 65 <= content <= 90: print('>>这是一个大写字母') elif 97 <= content <= 122: print('>>这是一个小写字母') elif 48 <= content <= 57: print('>>这是一个数字') else: print('>>这是其他特殊字符')

结果: 案例2:

# 案例练习----根据ASCII表来判断输入的字符是什么 content = input('请输入一个字符:') content1 = ord(content) if 65 <= content1 <= 90: print('>>这是一个大写字母') elif 97 <= content1 <= 122: print('>>这是一个小写字母') elif '0' <= content <= '9': print('>>这是一个数字') elif content == '_': print('这是一个下划线') else: print('>>这是其他特殊字符')

结果:


5.循环嵌套

循环里镶嵌循环 例题:(根据图示分支,写出相应的循环嵌套)

money = int(input('请输入购买金额:')) if money >= 500: sex = input('请输入性别:') if sex == '男': print('刮胡刀') elif sex == '女': print('化妆品') if money < 500: sex = input('请输入性别:') if sex == '男': print('打火机') else: print('发卡')

结果:


二、while语句

1.基本格式

格式:

while True: pass #---------------------------------------------- #循环三大条件: 1).初始值 2).步长 3).控制条件

练习:

money = int(input('请输入你的钱:')) while money >= 10: money -= 10 print('吃西瓜一次,剩下%d元' % money)

结果: 案例:计算1-2+3-4…100的和的多种方法


2.break和continue

break:结束离得最近的循环continue:结束本次离得最近的循环,执行下一次的循环

(注意)凡是求循环次数,都已循环条件为准,不以break为准,此案例循环次数为5

i = 0 while i < 5: age = int(input('请输入年龄:')) if age < 0: print('您输入的有误') break i += 1

结果


案例 综合案例-输入十个数,如果输入小于18,那么不参与运算,如果输入的大于>65,跳出循环,求输入的平均数

i = 0 # 循环次数 count = 0 # 计数 sum = 0 # 总数 average = 0 # 平均数 while i < 10: i += 1 age = int(input('输入第%d个人的年龄:' % i)) if age < 18: continue if age > 65: break else: count += 1 sum += age average = sum / count print('%d个人的平均年龄为%d' % (count, average))

结果:


3.案例

1.输入一个正整数,求里面最大的数

a = int(input('请输入一个正整数:')) b = 0 max = 0 while a > 0: b = a % 10 # 取个位 if b > max: max = b a = a // 10 # 取前边的数 print("最大的数为:", max)

结果:


2. 连续输入十个字符,求几个大写,数字个数,求ASCII最大的数和最小的数

i = 1 # 控制循环 dx, num = 0, 0 # 记录大写字母,记录数字 while i <= 10: chara = input('请输入的字符:') if i == 1: max = ord(chara) min = ord(chara) if 'A' <= chara <= 'Z': dx += 1 if '0' <= chara <= '9': num += 1 if ord(chara) > max: max = ord(chara) if min > ord(chara): min = ord(chara) i += 1 print('大写字母有%d个,数字有%d个,最大的ASCII为%d,最小的ASCII为%d' % (dx, num, max, min))

结果:


3.10-20之间,遇到七的倍数跳过,遇到尾数为7的结束

a = 9 while True: a += 1 if a % 7 == 0: continue if a % 10 == 7: break print(a)

结果:


三、 for循环

range(开始位置,结束位置,步长)—左闭右开

# -------------------for循环和---range函数 for i in range(5): print(i,end=' ') print() for i in range(3,5): print(i,end=' ') print() for i in range(18,8,-3): print(i,end=' ')

结果:


最新回复(0)