检查给定的键是否已存在于字典中,但允许变化

2024-06-26 16:50:27 发布

您现在位置:Python中文网/ 问答频道 /正文

使用本词典:

class_1 = {'Bob' : [3,4,7], 
       'Jim' : [4,1,3],
       'Greg' : [7,3,9],
       'Fred' : [10,5,3],
       'Jim' : [3,7,9],
       'Jeff' : [2,9,3]}

如何禁止'Jim'的输入,但允许'Jim_2'的输入?你知道吗

通过使用if name in class_1:禁止变量输入,谢谢。你知道吗


Tags: nameiniffredclassbobjeffjim
3条回答

如果密钥不在字典中,则下面只添加key: value对:

if new_name not in class_1:
    class_1[new_name] = new_data

字典中不允许有重复的键。当您插入字典时,字典将检查项目是否已经存在,如果是,则该条目的值将被更新。如果它不在那里,它将被添加到字典中。你知道吗

如果不允许输入某些键,则需要编写一个helper函数来检查项目是否存在,如果存在,则不要将更新写入字典。你知道吗

    user_input = raw_input("Name: ")
    class_1 = {'Bob' : [3,4,7], 
           'Jim' : [4,1,3],
           'Greg' : [7,3,9],
           'Fred' : [10,5,3],
           'Jim' : [3,7,9],
           'Jeff' : [2,9,3]}

    if any(user_input.startswith(k) for k in class_1.keys()):
        print "Valid input!"
    else:
        print "Invalid input!"

如果您想获得输入值和字典中键之间的平均距离(差),可以尝试查看fuzzy searching。有一些流行的lib专门用于这种字符串比较。你知道吗

相关问题 更多 >