Python 我有一个列表字典,如何制作第I个元素的字典?

Python 我有一个列表字典,如何制作第I个元素的字典?,python,python-3.x,dictionary,Python,Python 3.x,Dictionary,在Python3中工作 所以我有一本这样的字典; {“条纹”:[1,0,5,3],“腿”:[4,4,2,3],“颜色”:[‘红色’、‘灰色’、‘蓝色’、‘绿色’]} 我知道字典中的所有列表都有相同的长度,但可能不包含相同类型的元素。其中一些甚至可能是列表的列表 我想还一本这样的字典 $>>>获取元素(2) {“条纹”:5,“腿”:2,“颜色”:“蓝色”} 我知道理解字典是一件事,但我对如何使用字典有点困惑。我也不确定这是否是实现我的目标的最优雅的方式,我能切分一本字典吗?如果你想创建Ge

在Python3中工作

所以我有一本这样的字典;

{“条纹”:[1,0,5,3],“腿”:[4,4,2,3],“颜色”:[‘红色’、‘灰色’、‘蓝色’、‘绿色’]}
我知道字典中的所有列表都有相同的长度,但可能不包含相同类型的元素。其中一些甚至可能是列表的列表

我想还一本这样的字典


$>>>获取元素(2)
{“条纹”:5,“腿”:2,“颜色”:“蓝色”}


我知道理解字典是一件事,但我对如何使用字典有点困惑。我也不确定这是否是实现我的目标的最优雅的方式,我能切分一本字典吗?

如果你想创建
Get\u element()
函数,这是一种方法:

def Get_element(d, i):
    return {k: v[i] for k, v in d.items()}
这里有一个方法:

d = {"stripes": [1,0,5,3], "legs": [4,4,2,3], "colour": ['red', 'grey', 'blue', 'green']}

def get_element(d, i):
    return dict(zip(d, list(zip(*d.values()))[i]))

get_element(d, 2)

# {'colour': 'blue', 'legs': 2, 'stripes': 5}
这里有一个小的dict压缩,可以完成这项工作。您只需逐个检查字典中的所有键值对,并对其进行一些转换,从而生成另一个与现有字典具有相同数量对的字典


您可以阅读有关列表理解的更多信息。

您想从每个值中获得第二项内容吗<代码>{k:v[2]表示k,v表示d.items()}。
def ith_element(d, i):
  return { k : v[i] for k, v in d.items() }