【发布时间】:2012-10-10 14:27:59
【问题描述】:
我有一个包含 1000 多个键的庞大字典,每个值都超过 600 000 int 长。现在,我需要提取其中一些整数,所以我想从 600 000 到 5k。但它不能是随机的 5k,它们必须在非常特定的位置。由于 5k 仍然有点太大而无法手动提取,我需要使用一个索引列表来指示应该取出值中的哪些整数。 我已经在小列表上测试了提取,索引 [1,3,5,7,9] 和 long_val ['a','b','c','d','e','f','g ','h','i','j','k'] 那么我可以这样做:
for each in xrange(len(long_val)):
print indices[long_val[each]]
我得到 b、d、f、h 和 j(根据需要)。
现在,在处理字典(其中 long_val 被实际字典值替换)时,这并不那么简单。我试过了:
for keys,values in dict_gtps.iteritems():
for each in xrange(len(values)):
abs_new[keys]=pos_3[values[each]]
但我收到“索引超出范围”错误消息。
【问题讨论】:
标签: python dictionary indexing extraction