mirror of
https://github.com/krahets/hello-algo.git
synced 2024-12-27 15:06:28 +08:00
f68bbb0d59
* Revised the book * Update the book with the second revised edition * Revise base on the manuscript of the first edition
50 lines
1.2 KiB
Python
50 lines
1.2 KiB
Python
"""
|
|
File: hash_map.py
|
|
Created Time: 2022-12-14
|
|
Author: msk397 (machangxinq@gmail.com)
|
|
"""
|
|
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
sys.path.append(str(Path(__file__).parent.parent))
|
|
from modules import print_dict
|
|
|
|
"""Driver Code"""
|
|
if __name__ == "__main__":
|
|
# 初始化哈希表
|
|
hmap = dict[int, str]()
|
|
|
|
# 添加操作
|
|
# 在哈希表中添加键值对 (key, value)
|
|
hmap[12836] = "小哈"
|
|
hmap[15937] = "小啰"
|
|
hmap[16750] = "小算"
|
|
hmap[13276] = "小法"
|
|
hmap[10583] = "小鸭"
|
|
print("\n添加完成后,哈希表为\nKey -> Value")
|
|
print_dict(hmap)
|
|
|
|
# 查询操作
|
|
# 向哈希表中输入键 key ,得到值 value
|
|
name: str = hmap[15937]
|
|
print("\n输入学号 15937 ,查询到姓名 " + name)
|
|
|
|
# 删除操作
|
|
# 在哈希表中删除键值对 (key, value)
|
|
hmap.pop(10583)
|
|
print("\n删除 10583 后,哈希表为\nKey -> Value")
|
|
print_dict(hmap)
|
|
|
|
# 遍历哈希表
|
|
print("\n遍历键值对 Key->Value")
|
|
for key, value in hmap.items():
|
|
print(key, "->", value)
|
|
|
|
print("\n单独遍历键 Key")
|
|
for key in hmap.keys():
|
|
print(key)
|
|
|
|
print("\n单独遍历值 Value")
|
|
for val in hmap.values():
|
|
print(val)
|