首页  >  文章  >  后端开发  >  python中如何定义和调用类详解

python中如何定义和调用类详解

伊谢尔伦
伊谢尔伦原创
2017-05-22 23:21:022830浏览

类的方法的定义

1.def fun_name(self,...);

      Pass

2.其中的参数self代表类的实例,在调用方法时由系统自动提供

3.方法定义时必须指明self参数

类的方法的调用

与普通的函数调用类似

1.类的内部调用:self.03f045e86df3b2404a87169d0d65f4bb(参数列表)。

2.在类的外部调用:88ef7992b4b96dc21c7e946092d6c4d3.03f045e86df3b2404a87169d0d65f4bb(参数列表)。

注意:以上两种调用方法中,提供的参数列表中都不用包括self。

演示一个类:

wash.py
class Washer:
 
    def init(self):
        self.water = 0
        self.scour = 0
 
    def add_water(self,water):
        print('Add water:',water)
        self.water = water
 
    def add_scour(self,scour):
        self.scour = scour
        print('Add scour:',self.scour)
 
    def start_wash(self):
        print('Start wash...')
 
if name == 'main':
    w = Washer()
    w.add_water(10)
    w.add_scour(2)
    w.start_wash()

程序的运行结果为:

11.png

修改程序如图所示:

washa.py
class Washer:
 
    def init(self):
        self.water = 10
        self.scour = 2
 
    def set_water(self,water):
        self.water = water
 
    def set_scour(self,scour):
        self.scour = scour
 
    def add_water(self):
        print('Add water:',self.water)
 
    def add_scour(self):
        print('Add scour:',self.scour)
 
    def start_wash(self):
        self.add_water()
        self.add_scour()
        print('Start wash...')
 
if name == 'main':
    w = Washer()
    w.set_water(20)
    w.set_scour(4)
    w.start_wash()

程序的运行结果为:

12.png


类内方法相互调用

1.在一个类的内部方法之间是可以相应调用的

2.调用方法同上面所述的在类的内部调用方法

构造方法及其作用

1.构造方法就是前面课程提到和使用的_init_()方法。

2.构造方法的作用就是在类实例化时初始化实例。

3._init_()方法就是类实例化的第一步自动调用的函数。

4.注意其方法名是固定的,但其参数同普通方法一样,至少应带有self参数。

5.初始化实例包括:定义和初始化实例属性:或调用类的一些方法。

6.构造方法可以带有除self外的其它各种参数(关键字参数、默认参数、用元组收集参数、用字典收集关键字参数等);可以达到实例化类时,为相应的属性传入指定的值。

程序演示:

washb.py
class Washer:
 
    def init(self,water=10,scour=2):
        self.water = water
        self.scour = scour
 
    def set_water(self,water):
        self.water = water
 
    def set_scour(self,scour):
        self.scour = scour
 
    def add_water(self):
        print('Add water:',self.water)
 
    def add_scour(self):
        print('Add scour:',self.scour)
 
    def start_wash(self):
        self.add_water()
        self.add_scour()
        print('Start wash...')
 
if name == 'main':
    # w = Washer()
    # w.start_wash()
    wb = Washer(100,10)
    wb.set_water(50)
    wb.set_scour(5)
    wb.start_wash()

程序的运行结果为:

13.png

【相关推荐】

1. python类继承讲解

2. 解析Python类的动态修改的实例代码

3. 详解python类实例分析

4. 详解详细介绍l了Python类的继承

5. python类方法与对象方法介绍

以上是python中如何定义和调用类详解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn