当前位置: 首页 > web >正文

【python】Python 中,单下划线(_)和双下划线(__)开头以及结尾的命名方式具有特殊的含义和用途

Python 中,单下划线(_)和双下划线(__)开头以及结尾的命名方式具有特殊的含义和用途

 【单下划线开头(如_name)】:

表示该变量、函数或类是内部使用的,即它是一个“受保护的”成员(protected member),可直接访问_name,不建议在类或模块外部直接访问。
【双下划线开头(如__name)】:

表示该变量、函数或类是私有的(private member),只能在类的内部访问。不可直接访问__name,因为Python 会进行名称修饰(name mangling),即把 __name 转换为 _classname__name,以避免子类或外部代码意外地访问到这些私有成员。
【双下划线开头和结尾(__name__)】:

表示这是一个特殊方法(magic method 或 dunder method),由 Python 内部定义和使用。这些方法通常用于实现特定的功能,如构造函数(__init__)、字符串表示(__str__)、加法运算符(__add__)等。开发者可以重写这些方法来自定义类的行为。

【单下划线结尾(name_)】:

为了避免与 Python 的关键字或内置名称冲突,可以在名称后面添加一个下划线。作用:这是一种约定,用于解决命名冲突问题。
【 双下划线结尾(name__)】:

这种情况较少见,通常用于避免与父类中的名称冲突,尤其是在多重继承的情况下。作用:通过双下划线结尾,可以减少名称冲突的可能性。

http://www.xdnf.cn/news/1732.html

相关文章:

  • 每日算法——快乐数、两数之和
  • 域控重命名导致无法登录
  • 回溯--一种暴力搜索算法
  • write函数
  • RTSP播放器实现回调RGB|YUV给视觉算法,然后二次编码推送到RTMP服务
  • ORACLE DATAGUARD遇到GAP增量恢复方式修复RAC环境备机的实践
  • C语言教程(十五):C 语言函数指针与回调函数详解
  • 【高并发】 MySQL锁优化策略
  • rsync实现内网两台服务器文件同步
  • Winddows11官网下载安装VMware Workstation Pro17(图文详解)
  • Linux命令-perf
  • 企业办公即时通讯软件BeeWorks,私有化安全防泄密
  • 【MobaXterm】---修改 MobaXterm 终端 默认字体和大小 保真
  • 基于 C++ 的用户认证系统开发:从注册登录到Redis 缓存优化
  • 【技术派后端篇】整合WebSocket长连接实现消息实时推送
  • 《Python3网络爬虫开发实战(第二版)》配套案例 spa6
  • 数据结构——栈与队列
  • GPU热设计功耗(TDP)与计算效率的平衡艺术:动态频率调节对算法收敛速度的影响量化分析
  • 【Leetcode 每日一题】2799. 统计完全子数组的数目
  • Spring Security结构总览
  • 网络变更:APIC 节点替换
  • 使用Tauri 2.3.1+Leptos 0.7.8开发桌面小程序汇总
  • 【多智能体系统组织方式解析】五大架构赋能智能协作
  • java操作打印机直接打印及详细linux部署(只适用于机器和打印机处于同一个网段中)
  • windbg-A complete guide for Advanced Windows Debugging part1
  • 深入解析 Docker 容器进程的 cgroup 和命名空间信息
  • 机器学习 Day14 XGboost(极端梯度提升树)算法
  • window10部署MinerU
  • 电竞俱乐部护航点单小程序,和平地铁俱乐部点单系统,三角洲护航小程序,暗区突围俱乐部小程序
  • 玩转 C++ 算术运算符(五十二)