python 基础练习题, 陆续添加中
判定用户输入数字是否为闰年
闰年的定义:能够被4整除的年份
#input是自定义输入内容的函数 year = input("请输入年份数字:") #xxx.isdigit方法是检测字符串是否只由数字组成 if year.isdigit(): year = int(year) if year % 4 == 0: #{}.format 是一种格式化输出的方法 print("{} 是闰年".format(year)) else: print("{} 不是闰年".format(year)) else: print("请输入年份数字")
三次机会猜想程序生成的数字 A, 每次过后提示是否正确 或 大于小于 A, 三次过后, 游戏结束
import random A = random.randint(1,100) print(A) for i in range(3): B = input("请输入1-100之间的数字,包括1和100:") if B.isdigit(): B = int(B) if 1<= B <= 100: if B == A: print("恭喜你,猜对了") print("游戏结束") break elif B > A: print("第 {} 次, 猜的数字略大".format(i+1)) if i+1 == 3: print("游戏结束") else: print("第 {} 次, 猜的数字略小".format(i+1)) if i+1 == 3: print("游戏结束") else: print("请重新开始游戏,并输入符合要求的数字") else: print("请重新开始游戏,并输入符合要求的数字") break
import random times = 3 i = 1 A = random.randint(1,100) while times: B = input("请输入1-100之间的数字,包括1和100:") if B.isdigit(): B = int(B) if 1<= B <= 100: if B == A: print("恭喜你,猜对了") print("游戏结束") break elif B > A: print("第 {} 次, 猜的数字略大".format(i)) if i == 3: print("游戏结束") times -= 1 i += 1 else: print("第 {} 次, 猜的数字略小".format(i)) if i == 3: print("游戏结束") times -= 1 i += 1 else: print("请重新开始游戏,并输入符合要求的数字") else: print("请重新开始游戏,并输入符合要求的数字") break
打印1-100所有的奇数
for i in range(1,101): if i % 2 == 1: print(i)
一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;若每步上7阶,最后刚好一阶不剩.
a = 0 while a < 1000: if a % 2 ==1: if a % 3 == 2: if a % 5 == 4: if a % 6 == 5: if a % 7 == 0: print(a) a += 1
验证用户密码的程序, 用户只有三次机会输入错误,不过若输入内容包含 "*" 的话,则不计算在内
nums = 3 password = "hhhhh1" while nums: intpu_password = input("请输入你的密码:") if "*" in intpu_password: print("密码中不能包含*号,请重新输入") elif intpu_password == password: print("密码正确") break else: print("密码错误,还剩 {} 次机会".format(nums -1 )) nums -= 1
求100-999之间的所有水仙花数
如果一个3位数等于其各个数的立方和, 则称为水仙花数, 例如: 153 = 1^3 + 5^3 + 3^3, 因为153 就是一个水仙花数
for i in range(100,1000): ls = list(str(i)) a = int(ls[0]) b = int(ls[1]) c = int(ls[2]) if i == a ** 3 + b ** 3 + c ** 3: print(i)
有红、黄、绿三种颜色的球, 其中红球3个, 黄球3个, 绿球6个, 先将这12个球混合放在盒子中, 从中任意取出 8 个球,计算这些球的各种颜色搭配
for red in range(0,4): for yellow in range(0,4): for green in range(2,7): if red + yellow + green == 8: print("红球有 {} 个".format(red)) print("黄球有 {} 个".format(yellow)) print("绿球有 {} 个".format(green)) print("------------------------")