Python 3.6:当列表中的值发生变化时,找到另一个列表中值的总和?

陈敏
A = ['1','1','1','3','3','4']

B = ['5','9','3','4','8','1']

当列表 A 中的值发生变化时,例如从 1 变为 3。求列表 B 中值集的总和,例如 (5,9,3) 的总和。列表 A 和 B 的大小相同。

在列表 A = ['1','1','1','3','3','4']
SEARCH - 1)值从 1 变为 3,2 )值从 3 变为 4 .

在列表 B = ['5','9','3','4','8','1']
结果 - 1)只求和 5+9+3,2 )只求和 4+8。

有没有办法做到这一点?因为我想不出一个合乎逻辑的方法来解决它。

我的代码开始:

A = ['1','1','1','3','3','4']

B = ['5','9','3','4','8','1']


C=[int(value) for value in A]
print(C)

for i in C:
    if C[:-i] == C[:i]:

这将查看 A 的每个邻居值,看看它们是否相同,但我不知道如何将其与列表 B 的值相关联。

深渊

既然我明白列表A本身不会改变,但你表达了改变的想法,意味着列表具有不同的相邻元素的分区,然后想到了不同的解决方案:

鉴于您的原始数据:

A = ['1','1','1','3','3','4']

B = ['5','9','3','4','8','1']

我们可以使用 adefaultdict对这些数据进行分组:

from collections import defaultdict
D = defaultdict(list)

for a, b in zip(A,B):
    D[a].append(int(b))

只是为了展示我们收集的内容:

for a, b in D.items():
    print(a,b)
>> 1 [5, 9, 3]
>> 3 [4, 8]
>> 4 [1]

现在我们可以计算一些总和:

result = [sum(b) for a,b in D.items()]
print(result)
>> [17, 12, 1]

注意事项defaultdict

创建实例时:

D = defaultdict(list)

这将创建一个defaultdictwhich,当它遇到新键时将创建参数的一个实例。在这种情况下,它会创建一个新的list

所以每一行:

D[a].append(int(b))

a是一个D以前没有见过的键时,list会创建一个新的键,它被返回,应用到它.append(....

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

由于python tkinter中另一个网格元素的内容更新,如何阻止一个网格元素的位置发生变化?

来自分类Dev

从Python 3.x中的另一个列表中删除单独的项目列表

来自分类Dev

在Python 3.x中从另一个列表中删除单独的项目列表

来自分类Dev

Python3-如果另一个列表中的值足够接近,则对一个列表中的值进行平均

来自分类Dev

如何比较两个字典值列表,并在 Python3 中更改另一个列表值时更新列表值?

来自分类Dev

Python,当某些列表元素发生变化时执行函数

来自分类Dev

将列表中的值添加到Python中另一个列表中值的末尾

来自分类Dev

python 3如何将项目添加到另一个列表中的列表

来自分类Dev

将列表的每个元素与 Python3 中另一个列表的每个元素进行比较

来自分类Dev

如何将列表列表中的数字分配给python 3中的另一个列表列表?

来自分类Dev

如何检查列表中3个整数的和是否与另一个整数匹配?(Python)

来自分类Dev

在python 3.x中将一个列表作为另一个列表的索引

来自分类Dev

基于python中另一个列表的索引的列表特定元素的总和

来自分类Dev

在另一个3个值的总和中找到一个数组中的最大值

来自分类Dev

Python 3.x-根据另一个列表对一个列表进行排序,然后返回两个排序后的列表

来自分类Dev

Python 3:检查一个字符串是否有另一个列表中的多个匹配项

来自分类Dev

如何在 Python 的另一个列表中制作一个总和数字列表?

来自分类Dev

如何在另一个列表中返回3个最低值的列表

来自分类Dev

如何在另一个列表中返回3个最低值的列表

来自分类Dev

根据python中的索引用另一个列表的值替换列表中的值

来自分类Dev

Python:比较列表中的值(如果存在于另一个列表中)

来自分类Dev

每当另一个表发生变化时更新 MySQL 表

来自分类Dev

在python 3中过滤一个过滤列表

来自分类Dev

在python中映射3个列表的值

来自分类Dev

检查值列表是否在另一个嵌套列表python中,并返回匹配项

来自分类Dev

如果在另一个列表中找到值,则不会将Python列表附加到后面

来自分类Dev

熊猫python从另一个列值中从列表列中随机选择值

来自分类Dev

为什么将排序列表转换为Python中的集合后元素顺序会发生变化?

来自分类Dev

如何在Python中将列表列表中的一个值与列表列表中的另一个值进行比较

Related 相关文章

  1. 1

    由于python tkinter中另一个网格元素的内容更新,如何阻止一个网格元素的位置发生变化?

  2. 2

    从Python 3.x中的另一个列表中删除单独的项目列表

  3. 3

    在Python 3.x中从另一个列表中删除单独的项目列表

  4. 4

    Python3-如果另一个列表中的值足够接近,则对一个列表中的值进行平均

  5. 5

    如何比较两个字典值列表,并在 Python3 中更改另一个列表值时更新列表值?

  6. 6

    Python,当某些列表元素发生变化时执行函数

  7. 7

    将列表中的值添加到Python中另一个列表中值的末尾

  8. 8

    python 3如何将项目添加到另一个列表中的列表

  9. 9

    将列表的每个元素与 Python3 中另一个列表的每个元素进行比较

  10. 10

    如何将列表列表中的数字分配给python 3中的另一个列表列表?

  11. 11

    如何检查列表中3个整数的和是否与另一个整数匹配?(Python)

  12. 12

    在python 3.x中将一个列表作为另一个列表的索引

  13. 13

    基于python中另一个列表的索引的列表特定元素的总和

  14. 14

    在另一个3个值的总和中找到一个数组中的最大值

  15. 15

    Python 3.x-根据另一个列表对一个列表进行排序,然后返回两个排序后的列表

  16. 16

    Python 3:检查一个字符串是否有另一个列表中的多个匹配项

  17. 17

    如何在 Python 的另一个列表中制作一个总和数字列表?

  18. 18

    如何在另一个列表中返回3个最低值的列表

  19. 19

    如何在另一个列表中返回3个最低值的列表

  20. 20

    根据python中的索引用另一个列表的值替换列表中的值

  21. 21

    Python:比较列表中的值(如果存在于另一个列表中)

  22. 22

    每当另一个表发生变化时更新 MySQL 表

  23. 23

    在python 3中过滤一个过滤列表

  24. 24

    在python中映射3个列表的值

  25. 25

    检查值列表是否在另一个嵌套列表python中,并返回匹配项

  26. 26

    如果在另一个列表中找到值,则不会将Python列表附加到后面

  27. 27

    熊猫python从另一个列值中从列表列中随机选择值

  28. 28

    为什么将排序列表转换为Python中的集合后元素顺序会发生变化?

  29. 29

    如何在Python中将列表列表中的一个值与列表列表中的另一个值进行比较

热门标签

归档