Python基础/高级

python所学--面向对象(oop)--初级魔法方法

2018-07-15  本文已影响0人  大白python学习分享

1.面向对象编程的介绍

面向对象就是让对象取帮你做你想做的事情,面向对象编程分为类和对象,类就是一个模块,而对象就是能够具体使用的实例。

#定义一个类
class Dog():
    def jiao(self):
    print("汪汪叫")
#建一个狗的对象
dahuang = Dog()#dahuang就是狗的实例对象了
#现在使用类里面的方法就是对象去调用了
dahuang.jiao()#用那个方法就要用对象去调用
#用法如下
对象名.某个方法()

2.面向对象的几个魔法方法

1.__ init __ 魔法方法
一个类里面要有属性和方法,init就是去初始化属性

创建第一个对象的时候系统自动调用init魔法方法,用法如下:

class Dog():
    def __init__(self):
        #这里就是设定的一个默认属性,这个类中下面的操作可以用self.name
        self.name = "张三"
    def chi(self):
        print("%s在吃饭"%self.name)
#创建一个对象
zhangsan = Dog()
zhangsan.chi()
#输出以后就是------------------------------
张三在在吃饭

2.__ str __ 魔法方法
他就是用来显示你定义的属性

当你print输出对象的时候系统就会自动调用这个魔法方法,用法如下:

class Dog():
    def __init__(self):
        self.name = "张三"
    def __str__(self):
        return "我叫%s"%self.name#这里必须有一个return返回值
zhangsan = Dog()
print(zhangsan)#只有输出对象的时候系统才会调用str魔法方法

3.__ del __ 魔法方法

程序结束时或者删对象时系统自动调用del魔法方法,删除对象也可以用del

class Dog():
    def __del__(self):
        print("死了")
da = Dog()
print("as")
#这个时候是程序结束后调用del方法
========================================
as
死了
class Dog():
    def __del__(self):
        print("死了")
da = Dog()
del(da)
print("as")
#这个时候是删除对象直接就调用了del放法
========================================
死了
as

下次和大家分享一下继承的知识

上一篇下一篇

猜你喜欢

热点阅读