Python 比较两个元组元素列表

标签 python list tuples

我必须比较两个元组元素列表并结合元素本身的一些数学计算。

更准确地说,我有以下列表,list_1 的每个元组代表一个字符及其在文本 ex 中的频率。 ("a": "10)list_2 的每个元组代表一个二元组字符及其在同一文本中出现的频率,例如 ("a", “b”,“2”):

list_1=[("a","10"), ("b","5"), ("c","3"),("d","1")]
list_2= [("a", "b", "4"), ("b","c","1")]

我需要迭代两个列表,并且在 list_2 的字符与 list_1 的字符之间存在匹配的情况下,我的目标是使分析如下:

x= ("a","10")*("b","5")/("a","b","4")= 10*5/4

我希望我能清楚地解释问题......

最佳答案

试试这个,

list_1=[("a","10"), ("b","5"), ("c","3"),("d","1")]
list_2= [("a", "b", "4"), ("b","c","1")]

# Convert list_1 into a dict
d = {t[0]:int(t[1]) for t in list_1}

result = [d.get(t[0], 0)*d.get(t[1], 0)*1.0/int(t[2]) for t in list_2]

print(result)
#[12.5, 15.0]

关于Python 比较两个元组元素列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40930162/

相关文章:

python - 射频 : Convert List of Tuple to List of List

python - 我需要根据元组中的元素是否相等,以不同的顺序对两个元组列表进行排序

python - 为什么python允许列表[a :b] but not list[a] if a and b are out of index range?

c++ - 程序可以在 Mac 上编译,但不能在 Linux 上编译。获取错误 : converting to from initializer list

python - 如何评估 python 列表中的元组?

python - 在 pandas Intervalindex 中查找匹配间隔

python - 使用 Paramiko 进行端口转发

python - 运行相同docker命令的两台主机之间存在差异

python - 从列表中过滤记录

Python乘以等长的元组