gpt4 book ai didi

Python - 将二维列表中的值除以单个值的简便快捷方法

转载 作者:行者123 更新时间:2023-12-01 21:44:19 27 4
gpt4 key购买 nike

例如,我有一个 2D 列表,其 2x2 维度存储在变量 r 中。

 12    24
36 48

我想将列表中的每个值除以 2。一种简单而缓慢的方法是遍历每一行和每一列并将其除以 2

rows = 2
columns = 2
for x in range(rows):
for y in range(columns):
r[x][y] = r[x][y]/2

除了手动方法之外,是否有一种简单快捷的方法可以将 2D 列表中的每个值划分为特定值?我尝试了下面的代码,但它抛出了一个错误:

 s = r /2

错误:

TypeError: unsupported operand type(s) for /: 'list' and 'int'

最佳答案

您可以使用 numpy库来实现你想要的结果。它使用矢量化,因此它是执行操作的最快方法。

试试这个:

import numpy as np

arr = np.array(r) # --> initialize with 2d array
arr = arr / 2 # --> Now each element in the 2d array gets divided by 2

例如:

arr = np.array([[1, 2], [2, 3]]) # --> initialize with 2d array
arr = arr / 2 # --> divide by the scalar

print(arr)

输出:

[[0.5 1. ]
[1. 1.5]]

关于Python - 将二维列表中的值除以单个值的简便快捷方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60916760/

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