Python面试题总结

1.python是如何进行内存管理的?
1)引用计数。
python中的一切内容都可被称作对象。在每个对象被创建时,就创建了一个引用计数。这个数字记录着此对象被变量引用的次数。当对象不再被需要的时候,这个对象的引用计数为0时,它被垃圾回收。
2)垃圾回收。
首先,当内存中有不再使用的部分时,垃圾收集器会把他们清理掉,它会去检查那些引用计数为0的对象,然后清除其所在的空间。
其次,对于循环引用的对象(只有容器才会有循环引用问题)。python通过”标记-清除”和“隔代回收”进行垃圾清除。
3)内存池机制。
内存池机制即Pymalloc机制,用于对小块内存的申请和释放管理。这样做的显著优势是减少内存碎片,提升效率。
1.对于小对象,大小小于256kb,Pymalloc会在内存池中申请内存空间。
2.对于大对象,则会直接执行 new/malloc 的行为申请新的内存空间。
2.什么是lamda表达式?它有什么好处?
1)lamda表达式是python中创建匿名函数的一种特殊语法。它们只包含一条语句,并自动返回这条语句的结果。
2)lamda表达式的优点:代码简洁,不增加额外变量。
3.python中如何实现元组和列表的转换?
1)元组转列表:

你可能感兴趣的:(python)