栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python入门--下

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python入门--下

第八章 Python类和对象

Python语言设计之初就是一门面向对象的编程语言。

class tortoise:
    bodycolirf = "grenn"
    footnum = 4
    weight = 10

    def crawl(self):
        print("pa")

    def eat(self):
        print("eat")

    def protect(self):
        print("protect")

类:可以理解成为一个模板,可以创建无数个实例

对象(实例):类不能直接使用,由类创建的对象才可以使用。图纸和汽车的关系

属性:类中的所有变量称为属性

方法:类中所有函数称为方法。和函数不同的是,类的方法至少要含有一个self参数。类的方法不能单独使用,只能和类的实例一起使用

8.1定义类

class直接创建

class Demo:
    add = "nxl"
    
    def say(self,content):
        print(cotent)
  • add就是类属性

  • say就是类方法

    say更具体的说可以称为是实例方法。Python还可以定义类方法和静态方法。后面会解释区别。

  • 根据定义属性位置的不同,在类方法定义之外的变量称为类属性(add),定义在类方法中的属性称为实例属性。后面会解释区别

8.2__init__类构造方法

在创建类的时候,可以手动添加一个__init__()方法,这是一个特殊的类实例方法,称为构造方法或者构造函数。

__init__()方法可以包含很对参数,但是必须包含一个self参数,且必须作为第一个参数。也就是说类的构造方法至少要一个self参数。

class FirstClass:

    def __init__(self):
        print("调用构造方法")

    add = "zyh"

    def say(self, content):
        print(content)

即使用户不手动添加任何类构造方法,Python也会自动添加一个仅包含self参数的类构造方法

仅包含self参数的构造方法,又称为类的默认构造方法

class TheFirstClass:
    """123w"""

    def __init__(self, name, age):
        print(name, "的年龄是", age, sep="")

    add = "nxl"

    def say(self, content):
        print(content)


zhangsan = TheFirstClass('nxl', 22)

注意由于创建对象时会调用类的构造方法,如果构造函数有多个参数的时候,需要手动传递参数,传递方式就如上段代码所示,具体后面会解释。

同时也可以看到,self参数不需要手动传递,有关self的具体使用方法也会在后面解释。

8.3 类对象的创建和使用

穿件类对象的过程,称为类的实例化。

类的实例化

对已定义好的类进行实例化,语法格式为:
类名(参数)

定义类的时候,如果没有手动添加__init()构造方法,又或者添加的构造方法仅有一个self参数,那么创建类对象时的参数就可以省略。

下面创建了名为Demo的类,并进行实例化。

class Demo:
    # 定义了类变量(类属性)
    name = "nxl"
    age = "22"

    def __init__(self, name, age):
        # 定义两个实例变量
        self.name = name
        self.age = age
        print(name, age)

    # 定义一个say实例方法
    def say(self, content):
        print(content)


zhangsan = Demo("zyh", "22")

上段程序中构造方法除self参数外,还包含了两个参数,并且没有设置默认参数,所以在实例化对象的时候,需要传入相应的值。

类对象的使用

定义的类只有进行实例化之后才可以进行以下操作:

  • 访问或者修改类对象具有的实例变量,甚至可以增删;
  • 调用类对象的方法,包括调用现有的,以及给类对象动态添加方法
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/857567.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号