首页 > 解决方案 > python 性能循环 vs. sum vs. exec

问题描述

我确实找到了比较 sum 和 loop 性能的问题 - 但我有一个第二级问题:

有一个包含整数的二维数组“板”和一个包含单个元素引用的列表“单元格”。

这个名单是稳定的。

我必须总结我使用循环所做的元素:

r = w
for cell in cells:
    r += board[cell[0]][cell[1]]

因为我必须多次这样做(改变值)我正在寻找最高效的方式..

已经感谢任何答案。

吉达

标签: pythonperformance

解决方案


将您的板转换为 numpy 数组,然后您可以索引选择所需的值并使用 numpys 快速求和功能。

numpy_board = np.array(board)
your_sum = numpy_board[cells[0], cells[1]].sum()

推荐阅读