如何在Python3中实现类Bash的双键关联数组创建与访问?
Python3 实现Bash风格的双键关联数组
Bash中通过declare -A定义的双键关联数组,核心是用多值组合作为键存储数据。在Python里,直接用字典+元组键就能实现完全一致的功能:
1. 定义双键字典
把元组当作字典的键,赋值方式和Bash逻辑对齐:
# 初始化并赋值 array = {} array["alfa", 1] = "text1" array["beta", 1] = "text2" # 或者直接初始化时定义 array = { ("alfa", 1): "text1", ("beta", 1): "text2" }
2. 访问双键对应的值
直接用元组键访问,和你尝试的写法一致,只要字典初始化正确就能得到预期结果:
print(array["beta", 1]) # 输出:text2
注意事项
- Python字典允许不可变类型作为键,元组是不可变的,完美适配多键组合的需求;
- 如果你之前访问失败,大概率是误将字典定义成了嵌套结构(比如
array = {"beta": {1: "text2"}}),这种嵌套结构需要用array["beta"][1]访问,和Bash的双键逻辑不同; - 遍历双键字典时,可以直接拆分元组键:
for (key1, key2), val in array.items(): print(f"{key1}, {key2} → {val}")
内容的提问来源于stack exchange,提问作者Siracuso
相关产品推荐
相关产品推荐

