6 个实用的 Python 核心代码示例深度解析
Python 作为一种高级编程语言,以其简洁的语法和强大的生态著称。然而,要真正掌握 Python,不仅需要会写代码,更需要理解其背后的运行机制。本文精选了六个非常实用且容易混淆的 Python 代码片段,深入剖析其原理、应用场景及注意事项,帮助开发者提升代码质量与性能。
1. 类实例化:new 与 init 的执行顺序
在 Python 中,创建对象时涉及两个特殊方法:__new__ 和 __init__。很多初学者容易混淆它们的执行顺序和作用。
代码示例
class Test(object):
def __init__(self):
print("Test -> __init__")
def __new__(cls):
print("Test -> __new__")
return super().__new__(cls)
a = Test()
运行结果:
Test -> __new__
Test -> __init__
原理解析
- new (静态方法):负责创建实例。它是第一个被调用的方法,接收类本身作为参数(cls)。它必须返回一个实例对象。如果
__new__返回的不是当前类的实例,则不会调用__init__。 - init (实例方法):负责初始化实例。它接收新创建的实例作为第一个参数(self),用于设置属性。它没有返回值。
特殊情况
如果 __new__ 返回其他类的实例,__init__ 将不会被调用。例如:
class Test2(object):
def __init__(self):
print("Test2 -> __init__")
def __new__(cls):
()
()
b = Test2()


