Hace unos días, de repente tuve la idea de numpy
que hay muchas funciones en el paquete que se pueden usar para generar matrices diagonales, pero ¿hay alguna manera de generar matrices anti-diagonales? Aunque sabemos que generar una matriz anti-ángulos no tiene sentido matemático, por ejemplo, 1
una matriz con todos los anti-ángulos es en realidad solo 1
un signo menos diferente de una matriz con todos los anti-ángulos en la diagonal principal . Sin embargo, solo lo estudié por pura curiosidad, y aquí está la respuesta.
import numpy as np
class Debug:
@staticmethod
def mainProgram():
x = np.eye(3)
print("主对角线全为1的矩阵")
print(x)
for line in x:
length = len(x)
for i in range(int(length / 2)):
line[i], line[length - 1 - i] = line[length - 1 - i], line[i]
print("反对角线全为1的矩阵")
print(x)
if __name__ == '__main__':
debug = Debug()
debug.mainProgram()
"""
主对角线全为1的矩阵
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
反对角线全为1的矩阵
[[0. 0. 1.]
[0. 1. 0.]
[1. 0. 0.]]
"""
Hasta ahora, hemos visto que se genera con éxito 1
una matriz con todo en la línea anti-diagonal . (Por cierto: sin dificultad, puedo jugar diez, jajaja)
Si lo encuentra útil, levante la mano para dar un Me gusta y permítame recomendarlo a más personas ~