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

2022.6.17python笔记

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

2022.6.17python笔记

文章目录
  • 实例属性
  • 实例方法
  • 类对象
  • 类属性
  • 类方法
  • 析构函数__del__和垃圾回收机制
  • __call__方法和可调用对象


实例属性

实例属性是从属于实例对象的属性,也称为实例变量。
1.在——init——方法中通过

self.实例属性名 = 初始值

来进行定义。
2.在本类的其他实例方法张,也通过self进行访问

self.实例属性名

3.创建实例对象后,通过实例对象访问:

obj01 = 类名()
obj.实例属性名 = 值

在通过调用类名构造函数时,内存空间中会产生一个新的对象,并包含所有属性。并且可以添加,但是在创建另一个函数时,属性依然不会变。


实例方法

从属于实例对象,同生共死。
定义方法需要有self,第一个参数必须为self,指的是当前的实例对象。
调用实例方法时,不需要也不能给self传参,self由解释器自动传参。


类对象

解释器执行class语句时,就会创建一个类对象。

class Student():
	pass

print(type(Student))
print(id(Student))

Stu2 = Student
s1 = Stu2()
print(s1)

在这里Student就相当于一个模具,可以用它来创造很多饼干。可以把Student给Stu2。


类属性

类属性从属于类对象。可以被所有实例对象共享。

class Student():

	company = "wbl"    #类属性
	count = 0          #类属性

	def __init__(self,name,score):
	self.name = name             #实例属性
	self.score = score           #实例属性
	Student.count = Student.count + 1

	def say_score(self):
	print("我的公司是:",Student.company)
	print(self.name"的分数是:",self.score)

s1 = Student("张三",80)
s1.say_score()
print("一共创建{0}个Student对象".format(Student.count))

class使用时,解释器会创建一个模具对象(类对象),然后创建了两个类属性company和count。say_score也会被加载到类对象里。s1 = Student()时,就会产生一个新的对象,里面有两个实例属性和一个实例方法。新的对象里面的实例方法会指向类对象里的方法。


类方法

类方法通过装饰器@classmethod 来定义,格式如下:
@classmethod
def 类方法名(cls[ , 形参列表]):
函数体

创建一个新的对象时,类方法不会被创建在新的对象中。

静态方法
就是一个普通的,和类对象无关的方法,只不过放在了类的名字空间里,需要通过类来调用。

类方法和静态方法中不能调用实例对象,因为在模具中,但是饼干还没有被建造,所以self还没有存在。


析构函数__del__和垃圾回收机制

用于对象被销毁时所需的操作。
当对象没有被引用时,由垃圾回收器调用__del__方法。


__call__方法和可调用对象

定义了call方法的对象,成为“可调用对象”,即该对象可以像函数一样被调用。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/977631.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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