如何使用For循环在字典中的列表中获取某个值?

时间:2019-07-17 14:24:47

标签: python list dictionary

我想从字典中的列表中获取某些值,并使用Python中的for循环为这些值创建一个新变量。

sales = {'c1': [30.2, "lily"], 'c2': [31.3, "sam"], 'c3': [28.2, 'peter'], 'c4': [28.5, 'chan']}

预期输出: sales_sum = [30.2, 31.3, 28.2, 28.5]

4 个答案:

答案 0 :(得分:1)

尝试一下:

sales_sum = [x[0] for x in sales.values()]

答案 1 :(得分:1)

In [28]: sales = {'c1': [30.2, "lily"], 'c2': [31.3, "sam"], 'c3': [28.2, 'peter'], 'c4': [28.5, 'chan']}                                                                                                                                                                                                                     

In [29]: next(zip(*sales.values()))                                                                                                                                                                                                                                                                                           
Out[29]: (30.2, 31.3, 28.2, 28.5)

答案 2 :(得分:0)

python_sales = {'c1': [30.2, "lily"], 'c2': [31.3, "sam"], 'c3': [28.2, 'peter'], 'c4': [28.5, 'chan']}
sales_sum=[]
for sale in python_sales.keys():
    sales_sum.append(python_sales[sale][0])

有用吗? (尽管这里所有其他答案可能都更漂亮)

答案 3 :(得分:0)

列表理解答案很好,但是如果您想提高可读性:

for v in sales.values():
    sales_sum.append(v[0])