Python面试准备

可变类型:list、set、dict。不可变类型:num、string、元组

统计各个函数执行的时间

用装饰器

@property 修饰,就是将方法,变成一个属性来使用。

@classmethod 修饰类的方式

带修饰类方法:cls做为方法的第一个参数,隐式的将类做为对象,传递给方法,调用时无须实例化。

普通函数方法:self做为第一个参数,隐式的将类实例传递给方法,调用方法时,类必须实例化。

@staticmethod 修饰类的方式

跟classmethod差不多,但无需cls作为第一个参数

 

Python垃圾回收机制

Python中的垃圾回收是以引用计数为主,标记-清除和分代收集为辅。引用计数最大缺陷就是循环引用的问题,所以Python采用了辅助方法。

分配对象(object allocation)和取消分配对象(object deallocation)的次数。当两者的差值高于某个阈值时,垃圾回收才会启动。

引用计算:每个内存有多少个指针指向该内存,如果指针数(引用计数)为0,则该内存是可以回收的。

循环引用时,所有的引用计数都是1而不是0。

标记-清除:活动对象标记,非活动对象清除。判断活动对象用从根节点出发,有向图的可达域就是活动对象,从而讲孤岛清除。

分代收集:Python将所有的对象分为0,1,2三代,新对象为0代,GC之后仍然存活则为下一代。那些明明没有被引用但引用计数却不是零的对象进行引用计数减去一。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值