2024-04-26 22:49:45 发布
网友
假设我有一个值为的defaultdict:
x = defaultdict(int) x[a,1] = 1 x[a,2] = 2 x[a,3] = 3 x[b,1] = 4 x[b,2] = 5 x[b,3] = 6 x[c,1] = 7 x[c,2] = 8 x[c,3] = 9
如何只访问第一个索引为c的元素
或者更确切地说,我如何实现这样的功能:
defaultdict和普通dict一样,在键上没有任何特殊的切片行为。键只是对象,在您的例子中它们只是元组。dict不知道或执行任何关于键的内部结构的内容。(例如,可以使用不同长度的不同密钥。)获得所需内容的最简单方法是:
for key in x.keys(): if key[0] == 'c': print key, x[key]
另一种可能是使用defaultdict的defaultdict,并访问x['c'][1]等元素。在
x['c'][1]
您也可以使用以下方法,这在我的电脑上会快一点: 另外,我不知道您的用例,但是您选择的数据结构查询起来并不是特别有效。在
for i,e in x: if i=='c': print (i,e),x[(i,e)]
测试:
defaultdict和普通dict一样,在键上没有任何特殊的切片行为。键只是对象,在您的例子中它们只是元组。dict不知道或执行任何关于键的内部结构的内容。(例如,可以使用不同长度的不同密钥。)获得所需内容的最简单方法是:
另一种可能是使用defaultdict的defaultdict,并访问
x['c'][1]
等元素。在您也可以使用以下方法,这在我的电脑上会快一点: 另外,我不知道您的用例,但是您选择的数据结构查询起来并不是特别有效。在
测试:
^{pr2}$相关问题 更多 >
编程相关推荐