gpt4 book ai didi

python - 求和两个维度的最简单方法? (Python)

转载 作者:行者123 更新时间:2023-11-28 21:55:18 33 4
gpt4 key购买 nike

我需要求和两个维度的帮助。

假设我有 [[0,1,2],[3,4,5]] 作为我的维度,将这些数字相加将返回 int 15。

   def sum_dimensions(x):
x = []
answer = sum(x)
return int(x)

感谢指出我在代码中的错误。

最佳答案

让我们深入了解一下。我在我的机器上使用了以下数据集:

data = list(list(range(100000)) for i in range(1000))

我有以下结果:

In [13]: %%timeit                                             
sum(sum(ele) for ele in data)
....:
1 loops, best of 3: 1.15 s per loop

In [14]: %%timeit
sum([sum([item for item in ele]) for ele in data])
....:
1 loops, best of 3: 3.78 s per loop


In [15]: %%timeit
sum(j for i in data for j in i)
....:
1 loops, best of 3: 4.92 s per loop

In [16]: %%timeit
sum(itertools.chain.from_iterable(data))
....:
1 loops, best of 3: 1.61 s per loop

In [18]: %%timeit
sum(map(sum, data))
....:
1 loops, best of 3: 1.16 s per loop

但是对于小数据集,itertools 变体比 sum(sum 变体快 2 倍。sum(map(sum 似乎精确映射到 sum(sum(ele) for ele in data) 结构

关于python - 求和两个维度的最简单方法? (Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22872065/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com