python笔记整理第六十一篇(面向对象和面向过程、类与对象)
2021/12/17 11:22:23
本文主要是介绍python笔记整理第六十一篇(面向对象和面向过程、类与对象),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
面向过程和面向对象的区别:
面向过程事物比较简单,可以用线性的思维去解决,面向对象事物比较复杂,使用简单的线性思维无法解决。
面向过程和面向对象的共同点:
面向过程和面向对象都是解决实际问题的一中思维方式。
二者相辅相成,并不是对立的,解决复杂问题,通过面向对象方式方便与我们从宏观上把握时间之间的复杂的关系、方便我们分析整个系统;具体到微观操作,仍然使用面向过程方式来处理。
类:类别、,分门别类,物以类聚,人类,鸟类,动物类,植物类…
类是多个类似事物组成的群体的统称。能够帮助我们快速理解和判断事物的性质。
数据类型:不同数据类型属于不同的类
使用内置函数查看数据类型
对象:如100,99,520都是int类之下包含的相似的不同个例,这个个例专业术语称为实例或对象。
类的创建:
创建类的语法:
class Student: pass
类的组成:
类属性
实例方法
静态方法
类方法
对象的创建:又称为类的实例化
语法:实例名 = 类名()
代码如下:
class Student: #Student为类名称,有一个或多个单词组成,每个单词的首字母大写,其余小写 native_plac = '湛江' #直接写在类里的变量,称为类属性 def __init__(self,name,age): self.name = name #self.name称为实体方法,进行了一个赋值的操作,将局部变量的name的值赋给实体属性 self.age = age #实例方法 def eat(self): print('在路边炒粉') #静态方法 @staticmethod def method(): print('我使用了staticmethod进行修饰,所以我是静态方法') #类方法 @classmethod def method(cls): print('我使用了classmethod进行修饰,所以我是类方法') #在类之外定义的称为函数,在类之内定义的称为方法 def drink(): print('在街边喝扎啤') #Python中一切皆对象Student是对象吗?内存有开空间吗? #print(id(Student)) #print(type(Student)) #print(Student) #创建Student类对象 stu1 = Student('张三',20) print(stu1) print(stu1.name,end='\t') stu1.eat() #对象名.方法名() print(stu1.age) print('________---------------') Student.eat(stu1) #类名.方法名() 39行代码与35行代码功能相同,都是调用Student中的eat方法
运行方法:
<__main__.Student object at 0x01E4EF90> 张三 在路边炒粉 20 ________--------------- 在路边炒粉 Process finished with exit code 0
类属性、类方法、静态方法:
类属性:类中方法外的变量称为类属性,被该类的所有对象所共享
类方法:使用@classmethod修饰的方法,使用类名直接访问的方法
静态方法:使用@staticmethod修饰的方法,使用类名直接访问的方法
代码如下:
class Student: #Student为类名称,有一个或多个单词组成,每个单词的首字母大写,其余小写 native_plac = '湛江' #直接写在类里的变量,称为类属性 def __init__(self,name,age): self.name = name #self.name称为实体方法,进行了一个赋值的操作,将局部变量的name的值赋给实体属性 self.age = age #实例方法 def eat(self): print('在路边炒粉') #静态方法 @staticmethod def method(): print('我使用了staticmethod进行修饰,所以我是静态方法') #类方法 @classmethod def me(cls): print('我使用了classmethod进行修饰,所以我是类方法') #在类之外定义的称为函数,在类之内定义的称为方法 def drink(): print('在街边喝扎啤') #Python中一切皆对象Student是对象吗?内存有开空间吗? #print(id(Student)) #print(type(Student)) #print(Student) #创建Student类对象 stu1 = Student('张三',20) stu2 = Student('李四',22) #类属性的使用方法 print(Student.native_plac) print(stu1.native_plac) print(stu2.native_plac) Student.native_plac = '雷州' print(stu1.native_plac) print(stu2.native_plac) print('-------------------类方法的使用----------------') Student.me() print('-------------------静态方法的使用----------------') Student.method()
运行结果:
湛江 湛江 湛江 雷州 雷州 -------------------类方法的使用---------------- 我使用了classmethod进行修饰,所以我是类方法 -------------------静态方法的使用---------------- 我使用了staticmethod进行修饰,所以我是静态方法 Process finished with exit code 0
这篇关于python笔记整理第六十一篇(面向对象和面向过程、类与对象)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-02Python编程基础
- 2024-11-01Python 基础教程
- 2024-11-01用Python探索可解与不可解方程的问题
- 2024-11-01Python编程入门指南
- 2024-11-01Python编程基础知识
- 2024-11-01Python编程基础
- 2024-10-31Python基础入门:理解变量与数据类型
- 2024-10-30Python股票自动化交易资料详解与实战指南
- 2024-10-30Python入行:新手必读的Python编程入门指南
- 2024-10-30Python入行:初学者必备的编程指南