作为一个python小白,经过几天的学习,从最初的字面量等简单的概念,到单个的基础语法if\逻辑判断等,逐步完成逻辑更强,更稍微复杂的基础应用案例,学习了几个有趣经典的案例,初步体验了python的魅力,体会程序逻辑性,结合有趣的案例生动形象地运用所学知识,学习在于点滴积累:
1.水仙花数
#水仙花数:各个位的3次幂和等于其本身的三位数
#for循环结合 range()函数循环判断
for i in range(100, 1000):
# 分别求各个位的数字
# 个位 % 运用取余运算
ge = i % 10
# 十位 结合取商与求余运算
shi = i // 10 % 10
# 百位 取商
bai = i // 100
# 判断自幂和是否等于本身
# 结合算术运算符 **
if ge ** 3 + shi ** 3 + bai ** 3 == i:
# 等于就输出
print(f'水仙花数: {i}')
2.结合生活案例运用break在for循环中
# break跳出循环案例
# 需求:煮水时间,设定300秒自动结束
# 范围 range(1,501,1)
for i in range(1, 501, 1):
print(f'已煮水{i}分钟')
if i == 300:
print(f'已煮水{i}分钟,自动结束')
break
3.数字大爆炸的while循环版本
#需求:在1-100之间给出一个不变的底数,然后猜测数字,不中就继续猜测并提示猜大了或猜小了,直到猜中为止.
# 导包
import random
# 生成随机数并,赋值给底数变量bomb
bomb = random.randint(1, 100)
print(f'偷偷查看一下底数:{bomb}')
# 无限次猜测机会,但是定义一个计算变量计算猜测次数
count = 0
# 4.使用True条件,是循环不遇到break永不退出,此处即是,不猜中就继续猜
while True:
# 定义一个接受输入数字的变量gass_num
gass_num = int(input('请输入一个您猜的数字(1,100): '))
# 1.判断输入的数据是否符合所设置的范围
if gass_num > 100 or gass_num < 1:
print("您输入的数据不在范围内,输入有误,请重新输入: ")
# 否则,继续判断是否猜中
else:
# 5.count 计数加1
count += 1
# 2.一次版本,没有循环
if gass_num == bomb:
print(f"恭喜你,猜对了,你所使用的次数是{count}次,爆炸数字是{bomb}")
break
elif gass_num > bomb:
print("猜大了,请猜一个更小的数,请重新猜")
else:
print("猜小了,请猜一个更大的数,请重新猜")