1、Python垃圾回收机制
python采用 的是引用计数的机制,标记-清除和分代收集(隔代回收、分代回收)两种机制为辅的策略
(1)计数机制:GC模块主要运用了引用计数来跟踪和回收垃圾
(2)标记-清除:解决了容器对象可能产生的循环引用的问题
(3)分代回收:以空间换时间进一步提高垃圾回收的效率
(4)隔代回收:将系统中的所有内存块根据其存活时间划分为不同的集合,每一个集合就是一个‘代’,垃圾收集的频率随着‘代’的存活时间的增大而减小
2、python如何拷贝一个对象
(1)赋值:创建了对象的一个新的引用,修改其中任意一个变量都会影响到另一个
(2)浅拷贝:创建新对象,其内容非原对象本身的引用,而是原对象内第一层对象的引用
浅拷贝有三种形式:切片操作、工厂函数、copy模块的copy()函数
(3)深拷贝:创建一个新的对象,并且递归的复制它所包含的对象(修改其中一个,另外一个不会改变)
3、常见编程题
(1)求字符串中最长单词的长度
def len_str(words):
words=words.split(' ')
l=max([len(w) for w in words])
return l
(2)打印出10以内偶数
s=filter(lambda x: x % 2 == 0, range(10))
print(list(s))