第五天学习python

类和对象
初步介绍面向对象编程
以代码示例:

class www:
    def x(self):
        return"哈哈"
    def y(self):
        return"嘿嘿"
x=www()
print(x.x())
输出为
哈哈

可以看出,最后输出了构造函数里面 构造的def x()
但是大家看到self不知道是什么,对吧,下面给大家解释一下:

class ball:
    def x(self,name):
        self.name=name
    def y(self):
        print("这是%s"%self.name)
a=ball()
a.x("我")
a.y()
b=ball()
b.x("他")
b.y()

上述输出为:
这是我
这是他
因为,a=ball()创建了实例,然后a.x(“我”)是在def x里面输入了“我”,此时name=我,然后在输出方法a.y(),就会输出,这是我,self相当于this,在类的定义的时候把self写进去,这是python的一种方法。

下面介绍一个方法

class ball:
    def __init__(self,name):
        self.name=name
    def y(self):
        print("这是%s"%self.name)
a=ball(input("输入"))
a.y()
输入啦啦啦
这是啦啦啦

上述采用了—init—,从而直接输出,将参数直接传给name

class M(list):
    pass
list1=M()
list1.append(4)
list1.append(5)
list1.append(1)
print(list1)
输出为
[4, 5, 1]

最后输出了4,5,1.为什么呢?
class M (list)意思是,M为子类,而list为父类

如下给出的代码

class f:
    def h(self):
        print("调用父类")
class c(f):
    pass
p=f()
p.h()
z=c()
z.h()
输出为
调用父类
调用父类

p=f()意思是创建了一个实例p,然后调用方法p.h()
z=c()意思是创建了一个实例z,然后调用父类的方法z.h()
关于类,是个比较重要的东西,这里我们分两天学习

猜你喜欢

转载自blog.csdn.net/qq_40594554/article/details/81319462
今日推荐