Python中的双下划线方法(特殊方法,魔术方法)

本文介绍了Python中的特殊方法(如__init__、__str__等),它们在类定义中扮演着关键角色,允许自定义对象行为,支持内置函数和语法特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

双下划线开头和结尾的方法和属性是Python中的特殊方法(也被称为魔术方法或魔法方法)。这些方法在类的定义中具有特殊的含义,用于实现一些特定的行为和功能。

以下是一些常见的双下划线开头和结尾的特殊方法和属性:

  1. __init__

    • 特殊方法 __init__ 用于初始化一个对象,在创建对象时自动调用。它是构造方法。
  2. __str____repr__

    • __str__ 用于返回一个可读的字符串表示对象,可以通过内置函数 str() 调用。
    • __repr__ 用于返回一个对象的字符串表示,通常是一个可以用来重建对象的表达式,可以通过内置函数 repr() 调用。
  3. __len__

    • __len__ 用于返回对象的长度,可以通过内置函数 len() 调用。
  4. __getitem____setitem__

    • __getitem__ 用于通过索引访问对象的元素。
    • __setitem__ 用于通过索引设置对象的元素。
  5. __iter____next__

    • __iter__ 用于返回一个迭代器对象,可以通过内置函数 iter() 调用。
    • __next__ 用于获取下一个迭代器元素,可以通过内置函数 next() 调用。
  6. __del__

    • __del__ 用于在对象被销毁时进行清理操作。
  7. __eq____ne__

    • __eq__ 用于定义对象的相等性,可以通过 == 运算符调用。
    • __ne__ 用于定义对象的不等性,可以通过 != 运算符调用。
  8. __lt____le____gt____ge__

    • 用于定义对象的比较操作,分别对应 <<=>>= 运算符。
  9. __call__

    • __call__ 允许将对象像函数一样调用,可以实现对象的可调用行为。

这些是一些常见的特殊方法,它们可以在类的定义中被重写,从而实现自定义的行为。特殊方法提供了对Python语言特性的灵活利用,使得类的实例可以支持各种内置函数和语法特性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王摇摆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值