广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 计算机学校 > 惠州计算机学校 > 正文

python中的类和对象是什么?_惠州计算机Python培训学校

作者:黄君发布时间:2021-05-12分类:惠州计算机学校浏览:772


导读:类是抽象的概念,而对象是具体的东西。在面向对象编程的世界中,一切皆为对象,对象都有属性和行为,每个对象都是独一无二的,而且对象一定属于某个类(型)。当我们把一大堆拥有共同特征的对象的静态特征(属性)和动态特征(行为)都抽取出来后,就可以定义出一个叫做“类”的东西。

类是抽象的概念,而对象是具体的东西。在面向对象编程的世界中,一切皆为对象,对象都有属性和行为,每个对象都是独一无二的,而且对象一定属于某个类(型)。当我们把一大堆拥有共同特征的对象的静态特征(属性)和动态特征(行为)都抽取出来后,就可以定义出一个叫做“类”的东西。

我们先以生活中的例子,举例说明类和对象,类(class): 相当于施工图纸(blueprint),对象(object):房子(已经建造好的)。

接下来,让我们用代码的方式看一下类和对象的概念:

在Python中可以使用class关键字定义类,然后在类中通过之前学习过的函数来定义方法,这样就可以将对象的动态特征描述出来,代码如下所示:


class Student(object):

# __init__是一个特殊方法用于在创建对象时进行初始化操作 # 通过这个方法我们可以为学生对象绑定name和age两个属性

def __init__(self, name, age):

self.name = name

self.age = age

def study(self, course_name):

print('%s正在学习%s.' % (self.name, course_name))

# PEP 8要求标识符的名字用全小写多个单词用下划线连接

# 但是很多程序员和公司更倾向于使用驼峰命名法(驼峰标识)

def watch_tv(self):

if self.age < 18:

print('%s只能观看《熊出没》.' % self.name)

else:

print('%s《电锯惊魂》来了.' % self.name)

注意:class后面紧接着是类名,即Student。类名通常是大写开头的单词,紧接着是(object),表示该类是从哪个类继承下来的,继承的概念我们后面再讲,通常,如果没有合适的继承类,就使用object类,这是所有类最终都会继承的类。

当我们定义好一个类之后,可以通过下面的方式来创建对象并给对象发消息。创建实例是通过类名+()实现的:


def main():

# 创建学生对象并指定姓名和年龄

stu1 = Student('小白菜', 21)

# 给对象发study消息 stu1.study('Python程序设计')

# 给对象发watch_tv消息

stu1.watch_tv()

stu2 = Student('王大锤', 15)

stu2.study('思想品德')

stu2.watch_tv()

if __name__ == '__main__': main()

和普通的函数相比,在类中定义的函数只有一点不同,就是第一个参数永远是实例变量self,并且,调用时,不用传递该参数。除此之外,类的方法和普通函数没有什么区别,所以,你仍然可以用默认参数、可变参数、关键字参数和命名关键字参数。

小结

类是创建实例的模板,而实例则是一个一个具体的对象,各个实例拥有的数据都互相独立,互不影响.

方法就是与实例绑定的函数,和普通函数不同,方法可以直接访问实例的数据.

通过在实例上调用方法,我们就直接操作了对象内部的数据,但无需知道方法内部的实现细节。

和静态语言不同,Python允许对实例变量绑定任何数据,也就是说,对于两个实例变量,虽然它们都是同一个类的不同实例,但拥有的变量名称都可能不同.


点击咨询直接了解更多相关资料,我在惠州北大青鸟新方舟等你。

 

本文内容转载自网络,版权归原作者所有,如有侵权请联系我们进行删除。


标签:惠州计算机软件培训惠州计算件软件开发惠州计算机软件基础惠州计算机Python软件开发惠州Python培训学校惠州Python培训python基础教程python是什么python教程python入门


惠州计算机学校排行
标签列表
网站分类
文章归档
最近发表