大概这样吧。。题目自己整下,瞎编了几个
import json
def login():##登录并做题
while True:
name=input('输入账号:')
password=input('输入密码:')
print(name=="",len(password),len(password)<4)
if name=="" or len(password)<4:
print('账号不能为空并且密码需要大于4个字符,是否重新输入(y/n)?')
cmd=input().lower()
if cmd=="n":
break
else:
for user in users:
if user['name']==name and user['password']==password:##输入正确,做题
for q in qas:
print(q['q'])
if 'ans' in q:
an=input('请输入:')
q['ans'].append(an)
else:
an=input('请输入1(是),其他(否)')
if an=="1":
q['yes']+=1
else:
q['no']+=1
##保存到文件
with open('qa.txt','w',encoding='utf-8') as f:
f.write(json.dumps(qas,ensure_ascii=False))
return##做完题目退出登录函数重新选择功能
print('账号或密码错误,是否重新输入(y/n)?')
cmd=input().lower()
if cmd=="n":
break
#查看统计结果
def showChoices():
for qa in qas:
if 'yes' in qa:
print(qa['q'])
print('是:',qa['yes'],'否:',qa['no'])
def search():
s=input('输入关键词:')
for qa in qas:
if 'ans' in qa:
if s in qa['q'] or s in ','.join(qa['ans']):#关键字在题目中或者回答中输出
print(qa['q'])
for a in qa['ans']:
if s in a:
print(a)
#读取用户信息,内容为json字符串,如下
'''
[
{"name":"zhangshan","password":"1234"},
{"name":"lisi","password":"1234"},
{"name":"wangwu","password":"1234"},
{"name":"zhaoliu","password":"1234"}
]'''
with open('user.txt',encoding='utf-8') as f:
users=json.loads(f.read())
#读取问题,有yes,no是单选,有ans的是问答题,存储回答的内容,其他题目题主自己编
'''
[
{"q":"是否头晕?","yes":0,"no":0},
{"q":"是否体温高于37.3?","yes":0,"no":0},
{"q":"是否咽喉痛?","yes":0,"no":0},
{"q":"是否咳嗽?","yes":0,"no":0},
{"q":"是否全身乏力?","yes":0,"no":0},
{"q":"最近吃了什么药?","ans":[]},
{"q":"对什么药物过敏?","ans":[]}]'''
with open('qa.txt',encoding='utf-8') as f:
qas=json.loads(f.read())
while True:
print('''1、登录系统
2、查看统计结果
3、问答结果查询
4、退出系统''')
cmd=input()
if cmd=="4":
break
elif cmd=="1":
login()
elif cmd=="2":
showChoices()
elif cmd=="3":
search()
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!