Python字典函数

2024-04-20 04:55:57 发布

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

代码是这样的,输出是2,但我不明白为什么是这样的输出。你知道吗

def dictTest(d, aVal):
    for k in d:
        if d[k] == aVal:
            return k
    return None

lengths = {'one':3, 0:1, 'two':3}
print(dictTest(lengths, 3))

Tags: 代码innoneforreturnifdefone
2条回答

字典没有排序的意义,因此如果您检查一个值是否是一个特定的数字,就不能保证在有重复的值的情况下您会得到期望找到的键。你知道吗

如果你想保证订购词典,你可以使用收藏.订购信息:https://docs.python.org/3/library/collections.html#collections.OrderedDict

在将元素插入字典时,它们没有排序。如果你多次运行你的代码,它会给你一个不同的结果“一”和“二”。你知道吗

如果您的目的是获取该值的所有键,那么可以将它们存储在列表中并返回它们。你知道吗

相关问题 更多 >