Python中的哈希映射

232 投票
11 回答
783388 浏览
提问于 2025-04-17 09:24

我想在Python中实现一个哈希表(HashMap)。我想让用户输入一些内容。根据用户的输入,我会从哈希表中获取一些信息。如果用户输入的是哈希表中的一个键,我希望能找到对应的值。

我该如何在Python中实现这个功能呢?

HashMap<String,String> streetno=new HashMap<String,String>();
   streetno.put("1", "Sachin Tendulkar");
   streetno.put("2", "Dravid");
   streetno.put("3","Sehwag");
   streetno.put("4","Laxman");
   streetno.put("5","Kohli")

11 个回答

33

这是Python自带的功能。你可以查看字典的相关内容。

根据你的例子:

streetno = {"1": "Sachine Tendulkar",
            "2": "Dravid",
            "3": "Sehwag",
            "4": "Laxman",
            "5": "Kohli" }

你可以这样来访问它:

sachine = streetno["1"]

还有一点值得提的是:它可以使用任何不可变的数据类型作为键。也就是说,你可以用元组、布尔值或字符串作为键。

40

当初你问这个问题的时候,只是想要一个提示。这里有个提示:在Python中,你可以使用字典

365

Python 字典 是一种内置的数据类型,它支持键值对。它和 Java 的 HashMap 最相似。

你可以在创建字典的时候直接设置键值对:

streetno = {
    "1": "Sachin Tendulkar",
    "2": "Dravid",
    "3": "Sehwag",
    "4": "Laxman",
    "5": "Kohli"
}

创建后你也可以再设置键值对:

streetno = {}
streetno["1"] = "Sachin Tendulkar"
print(streetno["1"]) # => "Sachin Tendulkar"

还有一种创建字典的方法是使用 dict() 这个内置函数,但这种方法只适用于你的键是有效的标识符:

streetno = dict(one="Sachin Tendulkar", two="Dravid")
print(streetno["one"]) # => "Sachin Tendulkar"

撰写回答