【问题标题】:Getting a specific value of a key in a dictionary?获取字典中键的特定值?
【发布时间】:2019-04-15 08:49:17
【问题描述】:

我有一本这样的字典:

d = {'k1':[0.2,0.65,0.23], 'k2':[0.32,1.2,3.3], 'k3':[1.8,0.6,0.4], ...}

所以,我想得到一个键列表和列表中每个键的第二个值。我试过这段代码:

names = list(d.keys())
values = list(d.values())

第一行是正确的,它给了我所有键的列表,但是第二行提供了所有的值,这不是我需要的。所以我只需要每个键的第二个或第三个值。有什么建议吗?

【问题讨论】:

标签: python pandas list dictionary


【解决方案1】:

遍历dict 并在新的dict 中为每个key 获取v[1]

d = {'k1':[0.2,0.65,0.23], 'k2':[0.32,1.2,3.3], 'k3':[1.8,0.6,0.4]}

print({k:v[1] for k,v in d.items()})

输出

{'k1': 0.65, 'k2': 1.2, 'k3': 0.6}

【讨论】:

    【解决方案2】:

    尝试:

    mylist = [(k, v[1]) for k, v in d.items()]
    

    【讨论】:

      【解决方案3】:
      {k:v[1] for k,v in d.items()}
      

      使用字典推导式使用原始dict 的列表值中的第二个值创建一个新的dict

      【讨论】:

        【解决方案4】:

        这将对您有所帮助:

        names = list(d.keys())
        values = [v[1] for v in d.values()]
        

        【讨论】:

          【解决方案5】:

          这个迭代键和每个键的值

          for k,v in d.items():
              print("Key: %s" %k)
              print("Values: %s" %v)
              print("-"*8)
          

          【讨论】:

          • 这不是用户要求的。
          【解决方案6】:
          >>> import numpy as np
          >>> d = {'k1':[0.2,0.65,0.23], 'k2':[0.32,1.2,3.3], 'k3':[1.8,0.6,0.4]}
          >>> np.array(list(d.values()))[:,1]
          

          输出:

          array([0.65, 1.2 , 0.6 ])
          

          【讨论】:

            【解决方案7】:

            d = {k1:[0.2,0.65,0.23], k2:[0.32,1.2,3.3], k3:[1.8,0.6,0.4], ...}

            1. 仅从值中获取第二个元素,下面的代码将仅打印每个键的第二个元素 示例 - [v[1] for k,v in d.iteritems()] 打印 [0.65,1.2,0.6]

            2. 用于获取键:值 {k:v[1] for k,v in d.iteritems()} 打印 {'k1':0.65,'k2':1.2,'k3':0.6}

            3. 为了同时获取第二个和第三个元素,可以这样做 {k:[v[1],v[2]] for k,v in d.iteritems()}

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2017-10-23
              • 2021-02-10
              • 2016-05-07
              • 1970-01-01
              • 2017-01-05
              相关资源
              最近更新 更多