2022年 11月 3日

python——类函数和类调用

python——类函数和类调用

1.类函数:
格式:

#例1:
class Cat():                            #创建一个叫Cat的类
    sSex=None                           #定义这个类里有三个变量:sSex、sName、sAge的值为空值
    sName=None
    sAge=None
    def __init__(self,sex,name,age):    #在叫Cat的类里自定义一个初始化待赋值函数(必须在初始化函数括号内赋值)
        self.sSex=sex                   #这个函数的内容是,三个变量分别等于三个虚拟参数(name, sex, age)
        self.sName=name                 #这三个虚拟参数待赋值
        self.sAge=age
        print(f'这里有一只姓名{name}年龄{age}性别{sex}的猫')      #这个函数的内容还包括输出:'这里有一只姓名{name}年龄{age}性别{sex}的猫'
    def roar(self):                     #在叫Cat的类里自定义一个方法叫roar(不在初始化括号内都叫方法)
        print('-----喵喵喵----')         #这个方法的内容是,输出'-----喵喵喵 - ---'

class Tiger(Cat):                       #创建一个叫Tiger的类,他是Cat的子类
    sSex=None                           #定义这个类里有三个变量:sSex、sName、sAge的值为空值(可不写,不写则默认继承Cat类的三个变量)
    sName=None
    sAge=None
    def __init__(self,sex,name,age):     #在叫Tiger的类里自定义一个初始化待赋值函数(可不写,不写则默认继承Cat类的三个变量)
        self.sSex=sex                    #这个函数的内容是,三个变量分别等于三个虚拟参数(name, sex, age)(可不写,不写则默认继承Cat类的三个变量)
        self.sName=name
        self.sAge=age
        print(f'这里有一只姓名{name}年龄{age}性别{sex}的老虎')    #这个函数的内容还包括输出:'这里有一只姓名{name}年龄{age}性别{sex}的老虎'(可不写,不写则默认继承Cat类的输出内容)
    def roar(self):                       #在叫Tiger的类里自定义一个方法叫roar
        print('-----哦呜哦呜----')         #这个方法的内容是,输出'-----哦呜哦呜 - ---'


if __name__ == '__main__':                 #固定格式,上面是定义的类和函数,下面存放函数的调用

    cat=Cat(name='小白',sex='母',age='3岁') #新建一个叫cat的变量,调用叫做Cat的类,给前面定义的三个虚参赋予3个值[^1]
    cat.roar()                             #变量cat调用叫roar的方法
    tiger=Tiger(name='东北虎',sex='公',age='6岁') #新建一个叫tiger的变量,调用叫做Tiger的类,给前面定义的三个虚参赋予3个值
    tiger.roar()                           #变量tiger调用叫eat的方法

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

2.类调用(即导入另外一个脚本的类):
可以通过一个脚本来调用另外一个脚本,比如把会重复调用的类都放到一个脚本里,需要时可随时通过文件路径在另一个脚本中调用。
格式:from 路径 import 需要调用的类

#例2:
以例1为例,假设父类Cat位于如下图红框位置

在这里插入图片描述

子类Tiger位于如下图副本文件中,当运行副本文件时就会报错,因为无法直接调用另一文件中的类。

在这里插入图片描述

此时就可以通过【from python.day416.day416__python_考试 import Cat】
来调用非同一脚本中的类,再次运行,父类Cat被成功调用,程序就不会报错了。