Day 04 作业
# 任务:输入一个姓名:当姓名为张三,则输出:该回家吃饭了,如果不是,则输出:我在找张三
# 需求:分别使用条件判断和异常捕获完成任务
# 条件判断
name1 = input("请输入一个姓名:")
if name1 == "张三":
print("该回家吃饭了")
else:
print("我在找张三")
# 异常捕获
name2 = input("请输入一个姓名:")
try:
if name2 == "张三":
print("该回家吃饭了")
else:
print(name3)
except:
print("我在找张三")
循环
循环的分类
- for循环
- while循环
- 递归(也可以称之为循环)
while循环
语法:
while xxx(判断条件(表达式)): # 要么是True要么是False
(循环语句)
追求:用更少的代码,实现更多的功能
num = 10
while num > 0:
print("打印出了会被执行的句子")
会不停的打印,占用计算机的内存,直到崩溃
所以记得不要写死循环,要找出口:
num = 10
while num > 0:
print("打印出了会被执行的句子")
num -= 1 # num = num - 1
num = 0
while num < 10:
print("打印出了会被执行的句子")
num += 1
计算1~100的和:
- 使用sum和计数器
- 需要从1循环到100
num = 1
sum = 0
while num <= 100:
sum += num
num += 1
进阶:计算1~100的奇数和
- 从1循环到100,判断每个数书否能被2整除,如果不能就是奇数
- num += 2
方法一
num = 1
sum = 0
while num <= 100:
if num % 2 != 0: # 如果有余数,说明是奇数
sum += num
num += 1
print(sum)
方法二
num = 1
sum = 0
while num <= 100:
sum += num
num += 2
print(sum)
算法就是解决问题的思路和方法
循环控制语句
- break语句:执行过程中终止循环
- continue语句:跳过本次循环,进入下一次循环
# 从1打印到100,但是到50停止整个循环
num = 1
while num <= 100:
print(num)
if num == 50:
break # 结束整个循环
num += 1
# 从1打印到100,但是50不打印
num = 0
while num < 100:
num += 1
if num == 50:
continue # 跳过本次循环
print(num)
while循环嵌套
x = 0
count = 0
while x < 5:
y = 0
while y < 5:
count += 1 # 循环 25次
y += 1
x += 1
使用while循环写一个99乘法表
# 1*1=1
# 1*2=2 2*2=4
# 1*3=3 2*3=6 3*3=9
# ……
# 一个循环控制行,一个循环控制列
x = 1
while x <= 9:
y = 1
while y <= x:
print("{}*{}={}".format(y,x,x*y),end="\t")
# print()方法默认换行,如果不希望换行使用end属性
y += 1
print("")
x += 1
Day 05 作业
"""
任务:
每天道歉一次,并买三束花束花 总共持续10天
当我在第四天,买了第2束花后,女朋友不生气了,整个循环都会退出
疑问:在嵌套循环当中,内部循环执行到break它是退内部,还是整体?
提示:如何才能让条件循环停止
"""