2021/5/13杂记
Numpy
np.allclose()
判断两个ndarray数据是否每个元素都一样,返回bool值
if_same = np.allclose(a, b)
np.all()
判断给定轴向上的所有元素是否都为True
零为False,其他情况为True
如果axis为None,返回单个布尔值True或False
# NumPy all() 判断矩阵中 所有元素 是否 都为True
a2 = np.arange(5) # 生成一个矩阵 [0 1 2 3 4]
print("np.all(a2):", np.all(a2)) # 输出:False
a3 = np.array([0, 3, 0, 0, 0]) # 随手写一个矩阵 [0 3 0 0 0]
print("np.all(a3):", np.all(a3)) # 输出:False
a4 = np.zeros_like(a3) # 生成一个全是零的矩阵,形状与a3一样 [0 0 0 0 0]
print("np.all(a4):", np.all(a4)) # 输出:False
a5 = np.full_like(a3, False) # 生成一个全是False的矩阵,形状与a3一样
print("np.all(a5):", np.all(a5)) # 输出:False
a6 = np.full_like(a3, True) # 生成一个全是True的矩阵,形状与a3一样
print("np.all(a6):", np.all(a6)) # 输出:True
np.any()
判断给定轴向上是否有一个元素为True
如果axis为None,返回单个布尔值True或False
# import the necessary packages
import numpy as np
# NumPy any() 判断矩阵中 是否 有一个元素 为True
a2 = np.arange(5) # 生成一个矩阵 [0 1 2 3 4]
print("np.any(a2):", np.any(a2)) # 输出:True
a3 = np.array([0, 3, 0, 0, 0]) # 随手写一个矩阵
print("np.any(a3):", np.any(a3)) # 输出:True
a4 = np.zeros_like(a3) # 生成一个全是零的矩阵,形状与a3一样 [0 0 0 0 0]
print("np.any(a4):", np.any(a4)) # 输出:False
a5 = np.full_like(a3, False) # 生成一个全是False的矩阵,形状与a3一样
print("np.any(a5):", np.any(a5)) # 输出:False
a6 = np.full_like(a3, True) # 生成一个全是True的矩阵,形状与a3一样
print("np.any(a6):", np.any(a6)) # 输出:True
面向对象编程
eq(self, other)
魔术方法__eq__(self, other)用于判断两个对象的属性是否相等,返回bool值
class Item:
def __init__(self, val):
self.val = val
def __eq__(self, other):
return self.val == other.val
first = Item('hello')
second = Item('hello)
print(first == second) # True