位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享浅谈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)

  • 境外企业在中国境内承包建筑工程应在
  • 为什么会有不同的课程定义
  • 发票税率开错了怎么办
  • 税收工资什么意思
  • 捐赠资产管理办法
  • 信用减值损失是损益类的收入类还是费用类
  • 建筑劳务公司税负率多少才合适
  • 现金流量表填报说明
  • 金税盘怎样查询已开发票明细
  • 母子公司间借款利息交税吗
  • 跨境电商零售正面清单
  • 文化事业建设费怎么计算
  • 不动产发票怎么填写
  • 专利申请费用怎么做账
  • 公司一年未经营怎么赔偿
  • 税控设备维修费怎么算
  • 施工现场应建立什么
  • 个独企业生产经营所得税率
  • 计提坏账准备的科目
  • 固定资产净残值是什么意思
  • 资产总额和净资本的关系
  • 什么是毛利润和纯利润
  • 0x80070035无法访问
  • 如果工资少发怎么办
  • 销售折扣的税票怎么开
  • 预付款发票不能回来了怎么处理
  • 公证处会计分录
  • wisdm数据集
  • echarts地图参数设置
  • php url函数
  • ai数字绘画设计培训
  • 预付采购材料款60000元
  • 宝塔面板要安装什么环境
  • 购进的样品怎样做账
  • 核销已计提坏账的应收账款
  • php如何连接html
  • php获取参数值的三种方式
  • java中同步有两种方法
  • 织梦模板官网
  • window10解压文件
  • 银行日记账跨月登记方法
  • 银行回单应如何打印
  • 购买种子能抵扣进项吗
  • 材料采购账户的借方登记什么
  • 其他应收款增加会计分录
  • 联营企业有重大影响吗
  • SQL Server 2012 FileTable 新特性详解
  • linux安装ms
  • 公司可以打款给中间人
  • 可以假设两种情形吗
  • 仓库转租合同
  • 收到现金长时间不付款
  • 商贸公司经营范围可以写烟酒吗
  • 补缴以前年度企业所得税如何做账
  • 企业购入材料收到供货单位开具的发票
  • 企业代扣税费会计分录
  • 公司视同销售产品确认收入分录?
  • 建筑 营改增
  • 销户还能申请抚养费吗?
  • 提供加工劳务计入什么科目
  • 电子钥匙有效期多久
  • 事业单位企业所得税汇算清缴怎么做
  • 一个完整的活动策划方案范文
  • sql server的相关技术知识
  • win8怎么扩展c盘
  • centos7视频教程
  • mce文件是什么软件
  • Win7出现系统恢复选项怎么办
  • win8平板玩lol
  • win7打开软件速度没有win10快
  • ndk sdk
  • node.js使用的v8引擎是由哪个公司开发的
  • ubuntu nodejs
  • three. js
  • js如何深度克隆一个对象
  • 详解javascript事件冒泡
  • jquery cookie用法
  • 电子税务局怎么删除办税员
  • 怎么代理保险业务
  • 车辆保险代收车船税会计分录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设