函数_练习题_登录注册游戏抽奖
Posted allenchen168
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数_练习题_登录注册游戏抽奖相关的知识,希望对你有一定的参考价值。
在猜年龄的基础上编写登录、注册方法,并且把猜年龄游戏分函数处理,如
- 登录函数
- 注册函数
- 猜年龄函数
- 选择奖品函数
思路:根据功能要求划分功能模块,每个功能模块封装一个函数,最后按顺序调用函数,根据每次调用函数后的返回结果判断是否进行下一步
def register():
"""注册功能"""
count = 0
while count < 3:
username_inp = input('请输入你的用户名:')
pwd_inp = input("请输入你的密码:")
re_pwd_inp = input("请再次输入你的密码:")
if not pwd_inp == re_pwd_inp:
print('两次密码不一致')
count += 1
continue
with open('user_info.txt','a',encoding='utf8') as fa:
fa.write(f'username_inp:pwd_inp|') # 用户名和密码用“:”隔开,
fa.flush()
return 1
def login():
"""登录功能"""
username_inp = input("请输入用户名:")
pwd_inp = input("请输入密码:")
with open('user_info.txt','r',encoding='utf8') as fr:
for user_info in fr:
username, pwd = user_info.split(':')
if username.strip() == username_inp and pwd.strip('|') == pwd_inp:
print('登录成功')
return 1
else:
continue # 一般不会把continue写在最后,在可以不用写
else:
print('登录失败')
# 猜年龄游戏
def guess():
"""猜年龄游戏"""
age = 20
age_count = 0
while age_count < 3:
age_inp = input('请输入你的年龄:') # 与用户交互
if not age_inp.isdigit():
print(f'输入错误,请输入数字') # f格式化可以拼接数字和字符串
continue
age_inp_int = int(age_inp)
if age_inp_int > age: # 核心逻辑
print('猜大了')
elif age_inp_int < age:
print('猜小了')
else:
print('猜对了')
return 1
age_count += 1
def choice():
"""选择奖品"""
prize_msg = 0:'布娃娃',1:'钢铁侠',2:'nick老师签名',3:'python精品课'
prize_dict =
prize_count = 0
while prize_count < 2:
print(f'奖品如下:prize_msg')
# 与用户交互
prize_choice =int(input('请选择你需要的奖品序号:'))
prize = prize_msg[prize_choice]
# 奖品信息放入购物车
if prize in prize_dict:
prize_dict[prize] += 1
else:
prize_dict[prize] = 1
print(f'恭喜你获得奖品prize')
prize_count += 1
print(f'总共获得奖品为:prize_dict')
res1 = register()
if res1 == 1 :
res2 = login()
if res2 == 1:
res3 = guess()
if res3 == 1:
choice()
以上是关于函数_练习题_登录注册游戏抽奖的主要内容,如果未能解决你的问题,请参考以下文章
Java基础知识综合练习_使用集合存储_高级银行系统的搭建(注册登录存取款本行转账跨行转账销户特殊操作参数多个客户对象存入到银行类的集合,多个银行对象存入总测试类集合)