m0_74952090 2022-12-21 21:40 采纳率: 100%
浏览 92
已结题

Python 这个问题怎么回答?

img


具体问题看这个图,是一个关于疫情病情自动问诊系统设计至少五个选择问卷,两个问答题。谢谢!

  • 写回答

3条回答 默认 最新

  • 我不是idol 2022-12-21 23:55
    关注

    首先,我们可以使用 Python 的函数来实现注册和登录功能。

    (1)为了存储用户名和密码,我们可以使用 Python 的文件操作,将用户名和密码写入本地文件中。注册函数可以获取用户输入的用户名和密码,并将其写入文件中。登录函数可以获取用户输入的用户名和密码,并与文件中存储的用户名和密码进行匹配。如果匹配成功,则表示登录成功;如果匹配失败,则表示登录失败。

    (2)为了实现问诊题目列表,我们可以使用 Python 的组合数据类型(例如字典)来存储问题和选项。比如,我们可以定义一个字典,其中键为问题编号,值为问题及其选项。我们可以使用循环语句,依次遍历问题列表,输出问题并获取用户的答案。

    (3)为了实现选择题结果统计功能,我们可以在用户提交答案时,统计每个选项的选择次数。我们可以使用分支结构(例如 if 语句)来判断用户选择的答案,并增加对应选项的计数。最后,我们可以使用循环语句,遍历所有选项的计数,并输出统计结果。

    (4)为了实现问答结果查询功能,我们可以使用 Python 的文件操作,将用户的问答结果写入本地文件中。我们可以使用循环语句,遍历文件中的所有行,并使用分支结构进行敏感词过滤。最后,我们可以使用循环语句,输出过滤后的问答结果。
    以下是使用 Python 实现上述需求的示例代码:

    # 定义注册函数
    def register(username, password):
        # 将用户名和密码写入文件
        with open("users.txt", "a") as f:
            f.write(username + "," + password + "\n")
    
    # 定义登录函数
    def login(username, password):
        # 读取文件中的用户名和密码
        with open("users.txt", "r") as f:
            for line in f:
                fields = line.strip().split(",")
                if fields[0] == username and fields[1] == password:
                    return True
        return False
    
    # 定义问诊题目列表
    questions = {
        1: {"question": "你是否感到发热?", "options": ["是", "否"]},
        2: {"question": "你是否有咳嗽?", "options": ["是", "否"]},
        3: {"question": "你是否有腹泻?", "options": ["是", "否"]},
    }
    
    # 遍历问诊题目列表
    for i, q in questions.items():
        # 输出问题并获取用户的答案
        print(q["question"])
        for j, option in enumerate(q["options"]):
            print(str(j + 1) + ": " + option)
        answer = input("请输入你的答案: ")
        # 将答案写入文件
        with open("answers.txt", "a") as f:
            f.write(str(i) + "," + answer + "\n")
    
    # 定义统计结果字典
    results = {}
    
    # 读取文件中的答案
    with open("answers.txt", "r") as f:
        for line in f:
            # 解析问题编号和答案
            fields = line.strip().split(",")
            question_id = int(fields[0])
            answer = fields[1]
            # 统计答案
            if answer in results:
                results[answer] += 1
            else:
                results[answer] = 1
    
    # 遍历统计结果字典
    for answer, count in results:
        print(answer + ": " + str(count))
    
    # 定义敏感词列表
    sensitive_words = ["病毒", "死亡", "传染"]
    
    # 读取文件中的问答结果
    with open("questions_answers.txt", "r") as f:
        for line in f:
            # 解析问题和答案
            fields = line.strip().split(",")
            question = fields[0]
            answer = fields[1]
            # 过滤敏感词
            if any(word in answer for word in sensitive_words):
                continue
        # 输出问答结果
        print(question + ": " + answer)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月30日
  • 已采纳回答 12月22日
  • 创建了问题 12月21日

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料