【随手记】python中各类下划线的作用与功能

简介: 【随手记】python中各类下划线的作用与功能

在Python中,有多种下划线(_)的使用方式和含义。下面将介绍每种下划线的作用与功能。


  1. 单前导下划线(_var)


这种下划线表示一个非公开或弱内部属性。它仅是一种标记约定,告诉其他程序员不要直接访问此变量。例如,在类中定义私有属性时可以使用单前导下划线。


  1. 单末尾下划线(var_)


这种下划线通常用于避免命名冲突。例如,在Python中,我们不能使用一些保留字来命名变量,因此当我们想要使用某个保留字时,可以在其名称末尾添加一个下划线以避免命名冲突。


  1. 双前导下划线(__var)


这种下划线表示一个私有属性或方法。这意味着该属性或方法不能被外部访问,甚至无法从子类中访问。使用双前导下划线可以有效地隐藏类的实现细节。


  1. 双前导和末尾下划线(var


这种下划线通常用于特殊方法或属性,也称为魔术方法。这些方法和属性在Python中有特殊的意义和用途,例如__init__方法用于初始化新对象,__len__方法用于获取对象的长度。


  1. 单下划线(_)


这种下划线通常用作占位符,表示一个无关紧要的变量或参数。例如,在函数中,如果我们只需要使用一个参数而不需要使用另一个参数,则可以使用单下划线作为占位符。


  1. 以两个下划线开头但没有结尾的名称(__var)


这种命名方式是Python内部机制使用的一种约定,被称为名称修饰(name mangling)。这种方式会将属性名替换为类名和属性名的组合,以避免在子类中意外重载父类的属性。


总之,Python中的下划线主要用于标记私有属性、方法和特殊方法等功能,它们有助于控制程序的访问权限,同时也有助于避免命名冲突。好好利用下划线的各种应用是写出优秀Python代码的关键之一。

目录
相关文章
|
2天前
|
数据可视化 数据挖掘 数据处理
深度挖掘!Python 数据分析中 Matplotlib 与 Seaborn 的隐藏功能,让数据可视化更出彩!
【7月更文挑战第23天】在Python数据分析中,Matplotlib与Seaborn是关键的可视化工具。Matplotlib提供深度自定义,如调整轴刻度和网格,支持多子图布局。Seaborn基于Matplotlib,简化美观图表生成,内置主题与调色板,适用于复杂统计图形如小提琴图和成对关系图,且无缝集成Pandas数据框。掌握这些库的高级功能,能显著提升数据可视化效果,助力数据分析决策。
10 4
|
8天前
|
前端开发 JavaScript API
探索Python Django中的WebSocket集成:为前后端分离应用添加实时通信功能
【7月更文挑战第17天】现代Web开发趋势中,前后端分离配合WebSocket满足实时通信需求。Django Channels扩展了Django,支持WebSocket连接和异步功能。通过安装Channels、配置设置、定义路由和消费者,能在Django中实现WebSocket交互。前端使用WebSocket API连接后端,实现双向数据流,如在线聊天功能。集成Channels提升Web应用的实时性和用户体验,适应实时交互场景的需求。**
33 6
|
11天前
|
网络协议 安全 Shell
`nmap`是一个开源的网络扫描工具,用于发现网络上的设备和服务。Python的`python-nmap`库允许我们在Python脚本中直接使用`nmap`的功能。
`nmap`是一个开源的网络扫描工具,用于发现网络上的设备和服务。Python的`python-nmap`库允许我们在Python脚本中直接使用`nmap`的功能。
|
12天前
|
机器学习/深度学习 API 数据安全/隐私保护
python功能合集
Python功能合集
|
18天前
|
Python
Python编程实战:利用闭包与装饰器优化日志记录功能
【7月更文挑战第7天】Python的闭包和装饰器简化了日志记录。通过定义如`log_decorator`的装饰器,可以在不修改原函数代码的情况下添加日志功能。当@log_decorator用于`add(x, y)`函数时,调用时自动记录日志。进一步,`timestamp_log_decorator`展示了如何创建特定功能的装饰器,如添加时间戳。这些技术减少了代码冗余,提高了代码的可维护性。
19 1
|
1月前
|
Python
Python的`os`模块核心功能概述:通过`os.getcwd()`获取
【6月更文挑战第23天】Python的`os`模块核心功能概述:通过`os.getcwd()`获取、`os.chdir()`改变工作目录;使用`os.mkdir()`, `os.makedirs()`创建目录,`os.rmdir()`, `os.removedirs()`删除;`os.rename()`, `os.renames()`重命名文件或目录;`os.remove()`删除文件;`os.listdir()`列出目录内容;`os.path.exists()`, `os.path.isfile()`, `os.path.isdir()`检查路径;`os.stat()`获取文件属性。
29 4
|
1月前
|
数据安全/隐私保护 Python
Python装饰器是高阶函数,用于在不修改代码的情况下扩展或修改函数行为。它们提供可重用性、模块化和无侵入性的功能增强。
【6月更文挑战第20天】Python装饰器是高阶函数,用于在不修改代码的情况下扩展或修改函数行为。它们提供可重用性、模块化和无侵入性的功能增强。例如,`@simple_decorator` 包装`my_function`,在调用前后添加额外操作。装饰器还能接受参数,如`@logged("INFO", "msg")`,允许动态定制功能。
24 6
|
10天前
|
存储 关系型数据库 数据库
我将提供一个简化的Python代码示例和详解,以展示如何使用Python和Django框架来构建智能化小区综合物业管理系统的一部分功能。
我将提供一个简化的Python代码示例和详解,以展示如何使用Python和Django框架来构建智能化小区综合物业管理系统的一部分功能。
|
1月前
|
存储 缓存 Linux
Python pip常用功能说明
pip 是 Python 的一个包管理工具,可以让用户方便地下载和安装 Python 包。pip 可以从 PyPI (Python Package Index) 上下载这些包,并且自动处理依赖关系。PyPI 是一个存储着 Python 包的仓库,用户可以从这个仓库中搜索、下载和安装 Python 包。在使用 pip 安装 Python 包时,由于 PyPI 的服务器位于国外,下载速度可能比较慢,因此我们可以使用国内的镜像源来提高下载速度。常见的国内镜像源有阿里云、清华大学等。
30 6
|
11天前
|
数据采集 数据挖掘 数据处理
Python数据分析加速器:深度挖掘Pandas与NumPy的高级功能
【7月更文挑战第14天】Python的Pandas和NumPy库是数据分析的核心工具。Pandas以其高效的数据处理能力,如分组操作和自定义函数应用,简化了数据清洗和转换。NumPy则以其多维数组和广播机制实现快速数值计算。两者协同工作,如在DataFrame与NumPy数组间转换进行预处理,提升了数据分析的效率和精度。掌握这两者的高级功能是提升数据科学技能的关键。**
15 0