位置: 编程技术 - 正文

浅谈Python中带_的变量或函数命名(python里!)

发布时间:2024-02-27

推荐整理分享浅谈Python中带_的变量或函数命名(python里!),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python中的%怎么用,python里面\t,python中的\v,python里!,python中&apos,python中带*和**带参数,python里面的%s,python中带*和**带参数,内容如对您有帮助,希望把文章链接给更多的朋友!

Python 的代码风格由 PEP 8 描述。这个文档描述了 Python 编程风格的方方面面。在遵守这个文档的条件下,不同程序员编写的 Python 代码可以保持最大程度的相似风格。这样就易于阅读,易于在程序员之间交流。

python中的标识符可以包含数字、字母和_,但必须以字母或者_开头,其中以_开头的命名一般具有特殊的意义。

前后均带有双下划线__的命名

一般用于特殊方法的命名,用来实现对象的一些行为或者功能,比如__new__()方法用来创建实例,__init__()方法用来初始化对象,

x + y操作被映射为方法x.__add__(y),序列或者字典的索引操作x[k]映射为x.__getitem__(k),__len__()、__str__()分别被内置函数len()、str()调用等等。

仅开头带双下划线__的命名

用于对象的数据封装,以此命名的属性或者方法为类的私有属性或者私有方法。

如果在外部直接访问私有属性或者方法:

浅谈Python中带_的变量或函数命名(python里!)

是不可行的,这就起到了隐藏数据的作用,但是这种实现机制并不是很严格,机制是通过自动"变形"实现的,类中所有以双下划线开头的名称__name都会自动变为"_类名__name"的新名称:

这样就可以访问了。

这种机制可以阻止继承类重新定义或者更改方法的实现,比如,定义一个Foo的派生类:

重写了__spam方法,运行:

调用bar()方法的时候依然执行的是Foo类的__spam()方法,因为在bar()方法的实现中,self.__spam()已自动变形为self._Foo__spam(),Goo继承的bar()方法也是如此。

以单下划线_开头的命名

一般用于模块中的"私有"定义的命名。

from module import * 语句用于加载模块中的所有名称,要控制导入的名称,一种方法是定义列表__all__,只有在__all__中的名称才能通过*导入,

另一种方法就是以单下划线开头命名定义了,这种定义不会被*导入。

当然,在类中也可以用单下划线开头来命名属性或者方法,这只是表示类的定义者希望这些属性或者方法是"私有的",但实际上并不会起任何作用。

总结

标签: python里!

本文链接地址:https://www.jiuchutong.com/biancheng/377045.html 转载请保留说明!

上一篇:Python中对象的引用与复制代码示例(python引用方法)

下一篇:python Flask实现restful api service(python-flask)

  • 招聘预算费用包括哪些预算清单
  • 税务师工作年限是从毕业当天开始计算吗
  • 提交印花税会计分录
  • 一般增值税纳税人和小规模纳税人
  • 公司分红是按股权比例分配吗
  • 耗材如何入账
  • 公司怎么给个人开票
  • 投资利息收入要交所得税吗
  • 税率简并的影响因素
  • 所得税汇算调增调减是什么意思
  • 所得税季度申报营业收入填什么
  • 金融企业的代理贷款什么意思
  • 股权转让未分配利润如何账务处理
  • 开票税额与申报税额差一分账务怎么处理
  • 公司周年庆典费用计入什么科目
  • 个人所得税累计减免税额为0
  • 第一次申领发票可以增额吗?
  • 中小企业工会经费怎么算
  • 职工餐厅账务处理
  • 工程预算费用会计怎么做
  • 费用销售收入占比怎么算
  • 双系统跳过磁盘检测
  • 社保增加人员网上申报
  • 小微企业 记账
  • 金税盘纳税申报
  • 外包公司代缴的税怎么算
  • avsched32.exe是什么进程 avsched32进程有什么作用
  • vue使用pdf.js
  • gcasSWUpdater.exe是什么进程 有什么作用 gcasSWUpdater进程查询
  • php i
  • 应收票据到期收款
  • php如何使用
  • react组件框架
  • php array_product
  • 调出command命令窗口
  • 出口收汇手续费做什么科目
  • 解决问题对吗
  • 企业预收账款缴纳个税吗
  • 企业所得税的营业收入包括营业外收入吗
  • 资产负债表该怎么填写
  • sqlserver判断数字
  • 超市购物小票可以入账吗
  • 免征增值税和增值税区别
  • 网上代增值税专用发票
  • 实收资本没有实缴,财务报表里面怎么写
  • 贷款利息收入如何核算
  • 公司奖励员工制度
  • 软件购买商城
  • 临时工工资无发票个税怎么申报
  • 现金日记账根据记账凭证填写吗
  • 工会经费是不是税费
  • 主营业务成本带二级科目吗
  • 进项税额转出之后怎么处理
  • 资产减值损失属于费用类吗
  • 出口货物索赔如何确认收入
  • 发票报销流程和条件
  • 设置出纳权限的操作步骤
  • sqlserver 触发器 redis
  • mysql动态sql语句赋值
  • mysql5.6解压版安装教程
  • 加快Vista中多线程下载速度
  • xp系统设置锁屏
  • macos safari无法使用
  • linux远程界面
  • CentOS 6.2(32位/64位) 安装步骤图文详解
  • yosemite 10.10.3 beta4 下载地址 os x10.10.3beta4官方下载
  • linux怎么恢复数据
  • win8系统怎么样好用吗
  • js 图片加载
  • jQuery实现ToolTip元素定位显示功能示例
  • dom事件模型由什么组成
  • Android 自定义控件
  • 刮刮奖软件下载
  • 控制游戏类型
  • 安卓开发界面ui设计器
  • javascript 类
  • 税务非正常户解除申请怎么写
  • 国税局黑龙江省
  • 贵州省电子税务
  • 个人所得税计算扣除五险一金吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号