小编Dic*_*oyT的帖子

将参考字典与字典列表相匹配

所以我有一个参考字典

ref = {"a": 1, "b": 2}
Run Code Online (Sandbox Code Playgroud)

和一个字典列表

dict_list = [{"a": 1, "b": 2, "c": "success!"}, {"a": 1, "b": 3, "c": "nope!"}]
Run Code Online (Sandbox Code Playgroud)

dict_list我想要的是找到与 erence匹配的字典ref,并返回值c(即"success!")。我能够做到这一点,但我根本不喜欢这个解决方案:

In [7]: import pandas as pd
   ...: def f(ref, dict_list):
   ...:     df = pd.DataFrame.from_records(dict_list)
   ...:     return df.loc[(df["a"] == ref["a"]) & (df["b"] == ref["b"])].c[0]
   ...: 
   ...: f(ref, dict_list)
Out[7]: 'success!'
Run Code Online (Sandbox Code Playgroud)

如果有人有更优雅的东西(最好是纯Python)那就太好了!

python dataframe pandas

2
推荐指数
1
解决办法
120
查看次数

标签 统计

dataframe ×1

pandas ×1

python ×1