函数练习题
程序员文章站
2022-04-03 17:14:12
...
1.打字软件的正确率
编写函数,计算字符串匹配的准确率,(类似于打字软件)
orginStr为原始内容,userStr为用户输入内容
2.模拟轮盘抽奖游戏:
转盘分为三部分:一等奖、二等奖和三等奖
轮盘转的时候是随机的,
如果范围在[0,0.08)之间,代表一等奖
如果范围在[0.08,0.3)之间,代表二等奖
如果范围在[0.3,1)之间,代表三等奖
模拟本次活动1000人参加,模拟游戏时需要准备各等级奖品的个数
import random dict={ '一等奖':(0,0.08), '二等奖':(0.08,0.3), '三等奖':(0.3,1) } def fun(): count=random.random() for k,v in dict.items(): if v[0]<=count<v[1]: return k resultdict={} for i in range(1000): res=fun() if res not in resultdict: resultdict[res]=1 else: resultdict[res]+=1 for k,v in resultdict.items(): print(k,'----->',v)
3.打地鼠游戏
编写代码模拟打地鼠的小游戏i,
假设一共有5个洞口,老鼠在里面随机一个洞口
人随机打开一个洞口,如果有老鼠,代表抓到了,
如果没有,继续打地鼠,但是地鼠可能会跳到其他洞口
import random while True: answer = int(input('输入你想打的洞:')) result = random.randint(1, 5) if answer==result: print("恭喜,打中了") exit() else: print('对不起,没打中')
4.用函数及字典实现管理员后台会员管理系统
def userAdd(): ###userAdd添加用户的函数 print("添加会员信息".center(50, '*')) addUser = input("添加会员名:") ####addUser接收添加的用户 if addUser in userspass: #####userspass存储用户名和密码的字典 print ("用户%s已经存在" % (addUser)) else: addPasswd = input("密码:") ###addPasswd接受输入的密码 userspass[addUser] = addPasswd print("添加用户%s成功" % (addUser)) def userdel(): ###userdel删除用户的函数 print("删除会员信息".center(50, '*')) delUser = input("删除会员名:") ##### delUser接收要删除的用户名 if delUser not in userspass: print('%s用户不存在' %(delUser)) else: userspass.pop(delUser) #####字典删除了key,对应的value会随着删除 print("删除会员%s成功!" % (delUser)) def catuser(): ###catuser查看信息的函数 print("查看会员信息".center(50, '*')) for k, v in userspass.items(): ####用来遍历key与value print(k, '--->', v) ### print(userspass.items()) ###也可用来查看所有key-value print("管理员登陆".center(50, '*')) inuser = input('UserName:') inpasswd = input('Password:') userspass={} if inuser == 'admin' and inpasswd == 'admin': print("管理员登陆成功!") print("会员管理".center(50, '*')) while True: print(""" 操作目录 1 - 添加会员信息 2 - 删除会员信息 3 - 查看会员信息 4 - 退出 """) choice = input("请选择你的操作:") if choice == '1': userAdd() elif choice == '2': userdel() elif choice == '3': catuser() elif choice == '4': print('退出成功!!') exit() else: print("请输入正确的选择") else: print("管理员登陆失败!")
5.定义一个函数,输入为一个整形数,输出为该整形数各个位平方之和
且再输入k,a,b三个数,判断(a,b)内有多少个数使f(i)*k=i
def f(n): sum=0 n=str(n) for i in n: sum+=int(i)**2 return sum print(f(13)) print(f(207))
###接收变量k,a,b s=input('输入三个数:') #存储整形的为:k,a,b li=[] for item in s.split(): li.append(int(item)) k,a,b=li ##进行判断是否满足条件: count=0 for i in range(a,b+1): if k*f(i)==i: count+=1 print(count)
上一篇: 基础练习题
下一篇: JQuery入门 初级插件02