"""
@Date: 2022-01-21
@Author: 苏雨流丰
@lang: Python
@summary:数组拼接、点乘、乘法
"""
* 导入numpy包
import numpy as np
* 0矩阵 1矩阵
np_zeros = np.zeros((2, 2), dtype=int)
np_ones = np.ones((2, 2), dtype=int)
print(np_ones)
"""
[[1 1]
[1 1]]
"""
print(np.hstack((np_ones, np_zeros)))
print(np.vstack((np_ones, np_zeros)))
"""
[[1 1 0 0]
[1 1 0 0]]
[[1 1]
[1 1]
[0 0]
[0 0]]
"""
f = np.array([1, 2, 3])
g = np.array([4, 5, 6])
print(np.dot(f, g)) # 1*4+2*5+3*6=32
# 向量点乘
f = np.array([1, 2, 3])
g = np.array([4, 5, 6])
print(np.dot(f, g)) # 1*4+2*5+3*6=32
# 矩阵乘法
a = np.vstack((f, g))
print(a)
b = a.T[::-1, ::-1]
print(b)
"""
[[1 2 3]
[4 5 6]]
[[6 3]
[5 2]
[4 1]]
"""
c = np.matmul(a, b)
print(c)
"""
[[28 10]
[73 28]]
"""
- 这里得到一个2X2的矩阵,可以计算det(行列式值)
print(np.linalg.det(c)) # 54
# (in fact, we get number near to 54 [like 54.00000000000001], so why it happens?)