如何只处理 Python 中字典值列表的第一部分?
How can I handle only the first part of my value list of a dictionary in Python?
我有一本包含值列表的字典,我只想使用第一个逗号前每对的第一个值。那可能吗?
如果您遇到类似的事情,请记下来
如果你有字典d
,那么使用
d.keys()
到 return 字典的键,这是构成字典的每个键值对中的第一项
您期望的输出不清楚。如果你想要一个只保留子列表第一项的字典,请使用字典理解:
假设 dic1
输入。
dic2 = {k:v[0][0] for k,v in dic1.items()}
绝对有可能。
我现在假设:“我只想使用每对的第一个值”,
你的意思是你想从字典中提取每对的第一个值。
现在,这个问题的答案稍微取决于你用“配对”指的是什么。
如果你提到你可以从 dict 上的 items
方法中得到的项目,那么获取每个对的第一个元素的最简单方法是 keys
方法,也是直接在 dict 上.在代码中:
def get_fist_from_pair(d: dict):
return d.keys()
在你提供的图片中,存储在dict中的值是每个长度为1的列表,用另一个列表填充。如果这个内部列表是你用“pairs”表示的,代码会略有不同:
def get_fist_from_pair(d: dict):
return [v[0][0] for v in d.values()]
此代码查看每个值并提取内部列表的第一个元素。
如果 pair 的这种解释是正确的,但您还想将键与新字典中的该元素相关联,则代码为:
def get_first_from_pair(d: dict):
return {key: d[key][0][0] for key in d}
我有一本包含值列表的字典,我只想使用第一个逗号前每对的第一个值。那可能吗?
如果您遇到类似的事情,请记下来
如果你有字典d
,那么使用
d.keys()
到 return 字典的键,这是构成字典的每个键值对中的第一项
您期望的输出不清楚。如果你想要一个只保留子列表第一项的字典,请使用字典理解:
假设 dic1
输入。
dic2 = {k:v[0][0] for k,v in dic1.items()}
绝对有可能。
我现在假设:“我只想使用每对的第一个值”, 你的意思是你想从字典中提取每对的第一个值。
现在,这个问题的答案稍微取决于你用“配对”指的是什么。
如果你提到你可以从 dict 上的 items
方法中得到的项目,那么获取每个对的第一个元素的最简单方法是 keys
方法,也是直接在 dict 上.在代码中:
def get_fist_from_pair(d: dict):
return d.keys()
在你提供的图片中,存储在dict中的值是每个长度为1的列表,用另一个列表填充。如果这个内部列表是你用“pairs”表示的,代码会略有不同:
def get_fist_from_pair(d: dict):
return [v[0][0] for v in d.values()]
此代码查看每个值并提取内部列表的第一个元素。
如果 pair 的这种解释是正确的,但您还想将键与新字典中的该元素相关联,则代码为:
def get_first_from_pair(d: dict):
return {key: d[key][0][0] for key in d}