Python 开发之语法基础篇1:类和对象

在这里插入图片描述

一、前言

python是一门面向对象的编程语言,我认为的对象是一个封装,它包含有同一类事物的不同描述,里面的成员主要是“属性”和“方法”,可以把类看成是C语言当中加强版的结构体,用类把一些数据和代码封装起来,不管是对代码的可读性,还是之后代码的复用,都是很有好处的,今天我们第一讲就来看看什么是"类"以及类的实例化。

二、创建类

类的关键词是"class",话不多说,先来一段代码,创建两个类试试
代码实现:

class Man:
    strangth = "biger"
    height = "taller"
    sound = "low"
    
    def male(self,name,height,age):
        self.name = name
        self.height = height
        self.age = age

    def printmsg(self):
        print("男性的姓名:%s,身高%d,年龄%d" %(self.name,self.height,self.age))
        print(self.strangth)
        print(self.height)
        print(self.sound)

class Woman:
    strangth = "lower"
    height = "short"
    sound = "sweet"
    
    def female(self,name,height,age):
        self.name = name
        self.height = height
        self.age = age

    def printmsg(self):
        print("女性的姓名:%s,身高%d,年龄%d" %(self.name,self.height,self.age))
        print(self.strangth)
        print(self.height)
        print(self.sound)

这里我们根据男人和女人,分了两个类,类中的"stangth"、“height”、以及"sound"代表着类的属性,定义的"male"或者"female"即类的方法。我们都可以在实例化对象中引用它们,引用属性或方法都是用"."来实现的。

类创建好了,那我们需要实例化一个对象,才可以对类中的属性或者方法进行引用。

我们看到,在方法male和female中,都有使用"self"关键词,其实它的意思是实例化对象,如方法male中的self.name即是对实例化对象man的name赋值。

三、实例化对象

我们可以通过Man()或者Woman()来创建一个实例对象,但我们必须在创建后将其赋值给一个变量man或者woman,即man = Man(),否则这个实例对象没法使用,会被python的垃圾收集机制自动回收.
代码实现:

man = Man()
man.male("小明",180,24)
print(man.sound)
woman = Woman()
woman.female("花花",165,22)
man.printmsg()
woman.printmsg()

创建好实例对象后,即可以引用类中的属性和方法了。

完整代码如下:

class Man:
    strangth = "biger"
    height = "taller"
    sound = "low"
    
    def male(self,name,height,age):
        self.name = name
        self.height = height
        self.age = age

    def printmsg(self):
        print("男性的姓名:%s,身高%d,年龄%d" %(self.name,self.height,self.age))
        print(self.strangth)
        print(self.height)
        print(self.sound)

class Woman:
    strangth = "lower"
    height = "short"
    sound = "sweet"
    
    def female(self,name,height,age):
        self.name = name
        self.height = height
        self.age = age

    def printmsg(self):
        print("女性的姓名:%s,身高%d,年龄%d" %(self.name,self.height,self.age))
        print(self.strangth)
        print(self.height)
        print(self.sound)

man = Man()
man.male("小明",180,24)
print(man.sound)
woman = Woman()
woman.female("花花",165,22)
man.printmsg()
woman.printmsg()

四、运行

在这里插入图片描述

五、结语

如您在使用过程中有任何问题,请加QQ群进一步交流。

QQ交流群:906015840 (备注:物联网项目交流)。

获取资料:微信扫描下方二维码,关注公众号:一个物联网项目的前世今生。

静晨出品:静之所想,晨之所计
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值