如何从Python字典中提取值并在函数中使用它?

问题描述 投票:0回答:2

非常感谢您的帮助! 在Python中,我只想访问字典中特定键的值并在函数中使用它们。

这是我拥有的字典的示例:

dict={'key1': ['a', 'b', 'c'], 'key2': ['d', 'e', 'f'], 'key3': ['g', 'h', 'i']}

所有列表的长度都相同。实际上,列表的总长度> 800,所以我不想手动访问每个值。

这是接受两个变量的函数:

def function(variable1, variable2) ... returnValue

variable1和variable2对应于字典中键的值。

这就是我想做的: 对于 key1 和 key3 ,取第一个值并将它们用作函数中的变量 1 和变量 2(并将 returnValue 写入某处)。 然后从 key1 和 key3 中取出第二个值,并将它们用作函数中的变量 1 和变量 2。 依此类推,直到使用最后一个值。

看起来很简单,但我不知何故陷入了困境:/

我尝试了 for 循环来访问元素,但出现值错误,并且我尝试将 dict 转换为 pandas Dataframe 但仍然不起作用

python dictionary iteration
2个回答
0
投票
d={'key1': ['a', 'b', 'c'], 'key2': ['d', 'e', 'f'], 'key3': ['g', 'h', 'i']}

[(a,b) for a,b in zip(d['key1'],d['key3'])]

[('a', 'g'), ('b', 'h'), ('c', 'i')]  # you can do for all 800 elements

0
投票

如果我理解正确,您可能正在寻找

zip
,它可以让您成对(或三元组或更多)迭代可迭代对象:

d = {'key1': ['a', 'b', 'c'], 'key2': ['d', 'e', 'f'], 'key3': ['g', 'h', 'i']}


def function(k1, k2):
    for v1, v2 in zip(d[k1], d[k2]):
        print(v1 + v2)  # you'd probably do something else

function('key1', 'key3')

打印出来

ag
bh
ci
© www.soinside.com 2019 - 2024. All rights reserved.