Python - 从键列表中访问分层dict元素
2024-07-29
78
假设我有一个常规的"dict-of-dicts"如下:
?d = {} d[ 'a' ] = {} d[ 'a' ][ 'b' ] = 3 |
我当然可以使用它来访问元素d['a']['b']
.
在我的例子中,我有一个递归应用程序,在其中我将当前状态保持为键列表.所以我会的
?my_key = [ 'a' , 'b' ] |
如何使用my_key
?访问值3 ?当然,问题在于my_key
可以任意长(深).
我意识到我可以编写另一个遍历函数,但似乎应该有一种直接的方法.有任何想法吗?
1> Kevin..:
您可以使用reduce
不同的密钥迭代索引每一层dict:
>>> from functools import reduce #only necessary in 3.X >>> d = {} >>> d[ 'a' ] = {} #I'm assuming this is what you meant to type >>> d[ 'a' ][ 'b' ] = 3 >>> keys = ( "a" , "b" ) >>> reduce(dict.get, keys, d) 3 |
赞一波!1
相关文章
- 【说站】python Pandas读取数据文件的优点
- 【说站】python中in和is的区分
- 【说站】python异常中常见关键字
- 【说站】python os.path.join()函数的使用
- 【说站】python如何使用skimage包提取图像
- 【说站】python confusion_matrix()是什么
- 【说站】python中os.path.join()函数是什么
- 【说站】python中有哪些比较操作
- 【说站】python字符串的用法总结
- 【说站】python列表数据如何增加和删除
- 【说站】python解释器的多种使用
- 【说站】python多行注释的方法整理
- 【说站】python列表有哪些特点
- 【说站】Python继承的原理分析
- 【说站】Python中三种模块类型的介绍
- 【说站】python输入三个数字从小到大排序
- 【说站】python输入数字变成月份
- 【说站】Python类属性如何使用
- 【说站】Python中OSI七层模型是什么
- 【说站】Python数据可视化库有哪些
文章评论
评论问答