(一)编写函数fun1: 模拟轮盘抽奖游戏 轮盘分为三部分: 一等奖, 二等奖和三等奖; 轮盘转的时候是随机的,
如果范围在[0,0.08)之间,代表一等奖, 如果范围在[0.08,0.3)之间,代表 2 等奖, 如果范围在[0.3, 1.0)之间,代表 3 等奖, 模拟本次活动 1000 人参加, 模拟游戏时需要准备各等级奖品的个数.
要求:
1. 函数是无参有返回值的
2. If 选择结构的使用
3、随机库的应用 4、
最后将各个奖项和对应奖项的人数存到字典里
import random
def fun1():
first_count=0
second_count=0
third_count=0
for i in range(1000):
n=random.random()
if 0<=n<0.08:
first_count+=1
elif 0.08<=n<0.3:
second_count+=1
else:
third_count+=1
dict2 = {'一等奖':first_count,'二等奖':second_count,'三等奖':third_count}
return dict2
print(fun1())
(二)编写函数 fun2:打印出所有的"水仙花数", 所谓"水仙花数"是指一个三位 数,其各位数字立方和等于该数本身。
1. 用代码实现水仙花数,并打印 2.将所有的水仙花数存在列表中,并打印
def fun2():
list1=[]
for i in range(100,1000):
g=i%10
s=i//10%10
b=i//100
if g**3+s**3+b**3==i:
print(i)
list1.append(i)
return list1
print(fun2())
(三)编写函数 fun3:判断 101-200 之间有多少个素数,并输出所有素数。
1. 求素数的逻辑正确,并能正确实现 2. 将所有素数存到集合中,并打印
def fun3():
n_count = 0
set1=set()
for i in range(101,201):
for j in range(2,i):
if i%j==0:
break
else:
n_count+=1
set1.add(i)
break
print("有%d个素数"% n_count)
print(set1)
fun3()
(四)构建一个函数 fun4,参数关键字可变长参数,调用时用变量赋值传参方式。 如果 teacher 为‘Join’,则输出年龄 year, 如果 teacher 为其他,则输出学校 acad。 分别调用两次 (teacher=“Mike”,sex=‘男’,year=22, acad=“北京大学”), (teacher=“Join”,sex=‘女’,year=25, acad=“清华大学”)
要求: (1) 函数的参数是关键字可变长参数的 (2) 键和值分开遍历 (3) 根据字典的键去找值 (4) 输出结果正确 (5) 分别调用并打印结果
def fun4(**kwargs):
# 分别获取键和值
keys = kwargs.keys()
values = kwargs.values()
# 遍历键
for key in keys:
if key == 'teacher':
if kwargs[key] == 'Join':
# 如果 teacher 为 'Join',输出年龄 year
year = kwargs.get('year', '未提供')
print(f"年龄: {year}")
else:
# 如果 teacher 为其他,输出学校 acad
acad = kwargs.get('acad', '未提供')
print(f"学校: {acad}")
# 第一次调用
fun4(teacher="Mike", sex='男', year=22, acad="北京大学")
# 第二次调用
fun4(teacher="Join", sex='女', year=25, acad="清华大学")