如何用python求对角阵中元素之和
时间: 2024-10-29 13:11:11 浏览: 9
在Python中,如果你有一个二维数组(列表的列表),代表一个对角矩阵,你可以通过迭代对角线上的元素来计算它们的和。以下是一个简单的示例:
```python
def sum_diagonal(matrix):
# 确保输入的是方形矩阵,即行数等于列数
assert len(matrix) == len(matrix[0]), "Matrix must be square"
# 初始化对角线和为0
diagonal_sum = 0
# 对角线从左上到右下或右上到左下的两条分别累加
for i in range(len(matrix)):
diagonal_sum += matrix[i][i]
return diagonal_sum
# 示例
matrix = [[1, 2], [3, 4]]
print(sum_diagonal(matrix)) # 输出: 5 (1 + 4)
```
这个函数首先检查矩阵是否是正方形(行数等于列数),然后遍历矩阵并对角线上的每个元素(`matrix[i][i]`)添加到总和中。
相关问题
Python求对角线元素之和
可以使用 NumPy 库来实现对角线元素之和的计算,具体代码如下:
```python
import numpy as np
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
diagonal_sum = np.trace(matrix)
print(diagonal_sum)
```
输出结果为:
```
15
```
即矩阵的对角线元素之和为 15。
python求矩阵主对角线元素之和
在Python中,如果你有一个二维列表表示的矩阵(也称为数组),你可以通过遍历矩阵并仅选择主对角线上的元素来计算它们的和。这里是一个简单的例子:
```python
def sum_diagonal(matrix):
# 确保矩阵是方阵,即行数等于列数
assert len(matrix) == len(matrix[0]), "Matrix must be square"
# 初始化主对角线元素之和
diagonal_sum = 0
# 遍历矩阵
for i in range(len(matrix)):
diagonal_sum += matrix[i][i] # 只添加对角线元素
return diagonal_sum
# 示例
matrix = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
print(sum_diagonal(matrix)) # 输出:45
```
这个函数首先检查矩阵是否是方形的,然后通过双层循环(外层遍历行,内层遍历列),将每个对应位置的元素加到总和上,只对主对角线上的元素有效。
阅读全文