除非我误解,否则这numpy可以很好地利用:
>>> from numpy import *
>>> a = array([[1,2,3],[4,5,6],[7,8,9]])
>>> b = array([[0.5] * 3, [0.5] * 3, [0.5] * 3])
>>> a / b
array([[ 2., 4., 6.],
[ 8., 10., 12.],
[ 14., 16., 18.]])
Run Code Online (Sandbox Code Playgroud)
这也适用于乘法.事实上,正如马克所指出的,标量除法(和乘法)也是可能的:
>>> a / 10.0
array([[ 0.1, 0.2, 0.3],
[ 0.4, 0.5, 0.6],
[ 0.7, 0.8, 0.9]])
>>> a * 10
array([[10, 20, 30],
[40, 50, 60],
[70, 80, 90]])
Run Code Online (Sandbox Code Playgroud)
编辑:要完成,对于列表列表,您可以执行以下操作:
>>> a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> b = [[0.5] * 3, [0.5] * 3, [0.5] * 3]
>>> def mat_div(a, b):
... return [[n / d for n, d in zip(ra, rb)] for ra, rb in zip(a, b)]
...
>>> mat_div(a, b)
[[2.0, 4.0, 6.0], [8.0, 10.0, 12.0], [14.0, 16.0, 18.0]]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11651 次 |
| 最近记录: |