python中_x、__x、__xx__的区别

本文解析了Python中单下划线、双下划线前缀及两侧双下划线的含义与用途,包括其在私有方法标识、避免子类覆盖及魔术方法中的角色。

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

python中_x、__x、__xx__的区别


注释:该文章是从英文文档翻译过来的,具体代码可以参考原网址,这里只是简单解释一下他们的区别,方便大家迅速了解。原地址: difference-between-one-underline-and-two-underlines-in-python

1.‘单下划线’

Python没有真正的私有方法,所以方法或属性开头的下划线表示不应该访问这个方法,因为它不是API的一部分。

2.‘左侧双下划线’

它不是标识私有方法的,它的作用在于避免子类覆盖它的内容。
因此,在我们创建一个以"__"两个下划线开始的方法时,这意味着这个方法不能被重写,它只允许在该类的内部中使用。

3.‘两侧双下划线’

“__xx__”经常是操作符或本地函数调用的魔术方法。
例如,__init__()函数是当对象被创建初始化时调用的;__new__()是用来创建实例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值