龙良曲的python课程
Shape()函数
Python之Shape()函数
shape函数是numpy.core.fromnumeric中的函数,它的功能是读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度。
shape的输入参数可以是一个整数(表示维度),也可以是一个矩阵。以下例子可能会好理解一些:
(1)参数是一个数时,返回空:
(2)参数是一维矩阵:
(3)参数是二维矩阵:
以上分别为两行一列;三行两列
(4)直接用.shape可以快速读取矩阵的形状,使用shape[0]读取矩阵第一维度的长度
(5)但是当某一维度长度不一致时,读取所有维度时则不能读出长短不一致的维度
iter()函数与next()函数
在python中列表,元组等都是可迭代对象,我们可以通过iter()函数获取这些可迭代对象的迭代器。然后我们可以对获取到的迭代器不断使next()函数来获取下⼀条数据。iter()函数实际上就是调用了可迭代对象的__iter__方法(注意是两个横线,简单来说就是类似于C语言中的对链表结构的遍历,当指针不为空时就一直遍历下去,不停迭代。
python super()函数
描述
super() 函数是用于调用父类(超类)的一个方法。
super() 是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,但是如果使用多继承,会涉及到查找顺序(MRO)、重复调用(钻石继承)等种种问题。
MRO 就是类的方法解析顺序表, 其实也就是继承父类方法时的顺序表。
语法
以下是 super() 方法的语法:
super(type[, object-or-type])
参数
type – 类。
object-or-type – 类,一般是 self
Python3.x 和 Python2.x 的一个区别是:
Python 3 可以使用直接使用 super().xxx 代替 super(Class, self).xxx :
Python3.x 实例:
class A:
def add(self, x):
y = x+1
print(y)
class B(A):
def add(self, x):
super().add(x)
b = B()
b.add(2) # 3
Python2.x 实例:
class A(object): # Python2.x 记得继承 object
def add(self, x):
y = x+1
print(y)
class B(A):
def add(self, x):
super(B, self).add(x)
b = B()
b.add(2) # 3
返回值
无。