python中类和对象

简介: python中类和对象

一、什么是类?如何理解?



理解为现实生活中的一个类别。比如:人类、动物等。有大类、有小类。得到的本质:类其实是比较抽象的一个归类,并没有涉及到具体的一个事物。


二、什么是对象?



理解为:某一个类别的具体的实例化的事物。

比如就是人类的实例化一个“老刘”


三、类和方法的代码定义



我们需要使用系统关键词class,具体如下:

Class 类的名称:

类的属性和方法


说明:类其实就是一个代码块。

这里提到的“方法”,其实就是我们以前学过的函数,只不过在类的外面定义的时候叫函数,在类内部定义的时候,我们就叫方法。


类的定义举例:

定义一个获取和设置年龄的类。

class Person:

   def setAge(self,a):

       self.age=a

   def getAge(self):

       return self.age


四、类的实例化和方法调用



实例化之后的类如何使用?

举例:

p=Person()

#设置年龄

p.setAge(18)

#获取年龄

print(p.getAge())


如何应用类?

使用类的时候,必须要进行实例化,而实例化之后的类,我们称为对象。

如何实例化一个类?

只需要在类名称后加一个小括号即可。

举例:p=Person()

这里的p就是Person这个类的具体的一个实例对象。


补充类的方法定义:

由之前的例子,我们得到:每一个类中的方法在定义的时候,第一个参数必定是类的对象,一般这个参数的名字默认为self。也可以是其它的变量的名称,但是,默认情况下第一个参数无法是什么名字,都被默认为是这个类的对象本身。


五、总结类的特性



1.继承:父级的方法会被子级继承下来。

2.封装:把某个特定的方法封装在一个类下面,使得某个具体执行的功能会比较隐蔽。代码逻辑看起来也会比较清晰。

3.多态:同一个方法在不同的场景下面会有不同的效果。


六、设想类的应用场景



往往都是对应于现实事物的各个对象:比如贪吃蛇游戏中的蛇或者是食物。比如业务中的话,我们可以对应某个系统中的人的类别的某个数据表。等等现实生活中的场景。


七、总结强调



1.掌握类和对象的概念理解

2.掌握类和方法的定义

3.掌握类和对象的调用和使用方法

4.理解类的应用场景


本节源代码:

class Person:
    def setAge(www,a):
        www.age=a
    def getAge(self):
        return self.age
p=Person()
p.setAge(18)
#获取年龄
print(p.getAge())
相关文章
|
2月前
|
安全 大数据 程序员
Python operator模块的methodcaller:一行代码搞定对象方法调用的黑科技
`operator.methodcaller`是Python中处理对象方法调用的高效工具,替代冗长Lambda,提升代码可读性与性能。适用于数据过滤、排序、转换等场景,支持参数传递与链式调用,是函数式编程的隐藏利器。
113 4
|
3月前
|
安全 JavaScript Java
Python中None与NoneType的真相:从单例对象到类型系统的深度解析
本文通过10个真实场景,深入解析Python中表示“空值”的None与NoneType。从单例模式、函数返回值,到类型注解、性能优化,全面揭示None在语言设计与实际编程中的核心作用,帮助开发者正确高效地处理“无值”状态,写出更健壮、清晰的Python代码。
361 3
|
3月前
|
Python
解决Python中AttributeError:'image'对象缺少属性'read_file'的问题策略。
通过上述策略综合考虑,您将能够定位问题并确定如何解决它。记住,Python社区很庞大,也很乐于帮助解决问题,因此不要害怕在求助时提供尽可能多的上下文和您已经尝试过的解决方案。
115 0
|
7月前
|
Python
解决Python报错:DataFrame对象没有concat属性的多种方法(解决方案汇总)
总的来说,解决“DataFrame对象没有concat属性”的错误的关键是理解concat函数应该如何正确使用,以及Pandas库提供了哪些其他的数据连接方法。希望这些方法能帮助你解决问题。记住,编程就像是解谜游戏,每一个错误都是一个谜题,解决它们需要耐心和细心。
344 15
|
7月前
|
安全 测试技术 开发者
Python中的“空”:对象的判断与比较
在Python开发中,判断对象是否为“空”是常见操作,但其中暗藏诸多细节与误区。本文系统梳理了Python中“空”的判定逻辑,涵盖None类型、空容器、零值及自定义对象的“假值”状态,并对比不同判定方法的适用场景与性能。通过解析常见误区(如混用`==`和`is`、误判合法值等)及进阶技巧(类型安全检查、自定义对象逻辑、抽象基类兼容性等),帮助开发者准确区分各类“空”值,避免逻辑错误,同时优化代码性能与健壮性。掌握这些内容,能让开发者更深刻理解Python的对象模型与业务语义交集,从而选择最适合的判定策略。
252 5
|
7月前
|
人工智能 Python
[oeasy]python083_类_对象_成员方法_method_函数_function_isinstance
本文介绍了Python中类、对象、成员方法及函数的概念。通过超市商品分类的例子,形象地解释了“类型”的概念,如整型(int)和字符串(str)是两种不同的数据类型。整型对象支持数字求和,字符串对象支持拼接。使用`isinstance`函数可以判断对象是否属于特定类型,例如判断变量是否为整型。此外,还探讨了面向对象编程(OOP)与面向过程编程的区别,并简要介绍了`type`和`help`函数的用法。最后总结指出,不同类型的对象有不同的运算和方法,如字符串有`find`和`index`方法,而整型没有。更多内容可参考文末提供的蓝桥、GitHub和Gitee链接。
184 11
|
11月前
|
存储 数据处理 Python
Python如何显示对象的某个属性的所有值
本文介绍了如何在Python中使用`getattr`和`hasattr`函数来访问和检查对象的属性。通过这些工具,可以轻松遍历对象列表并提取特定属性的所有值,适用于数据处理和分析任务。示例包括获取对象列表中所有书籍的作者和检查动物对象的名称属性。
243 2
|
11月前
|
缓存 监控 算法
Python内存管理:掌握对象的生命周期与垃圾回收机制####
本文深入探讨了Python中的内存管理机制,特别是对象的生命周期和垃圾回收过程。通过理解引用计数、标记-清除及分代收集等核心概念,帮助开发者优化程序性能,避免内存泄漏。 ####
270 3
|
存储 缓存 Java
深度解密 Python 虚拟机的执行环境:栈帧对象
深度解密 Python 虚拟机的执行环境:栈帧对象
260 13
|
索引 Python
Python 对象的行为是怎么区分的?
Python 对象的行为是怎么区分的?
123 3