You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中阻止用户输入字典内已存在的邮箱值

问题原因
  • 原代码的email != users是字符串与字典对象直接比较,判断结果恒为True,导致后续校验逻辑完全失效
  • 原代码的email in users默认仅检查邮箱是否为字典的键(也就是已存储的姓名),不会检查是否为已存储的邮箱值,自然无法识别重复邮箱的场景
修改后的代码
users = {}

def option_2():
        """Function that adds a new name and email address"""
        # Prompt user to enter both name and email address
        name = input("Enter name: ")        
        email = input("Enter email address: ")
        # 检查邮箱是否已存在于字典的值集合中
        if email in users.values():
            print("That email is already taken.")
        else:
            users[name] = email
            print(users)
逻辑说明

调用字典的values()方法可以获取所有已存储的邮箱值,直接判断输入的邮箱是否在这个集合里即可识别重复;调整了判断分支的顺序,先做重复校验,校验不通过直接提示,校验通过再写入字典。

内容的提问来源于stack exchange,提问作者user14574630

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 21:15:08