位置: 编程技术 - 正文

浅谈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)

  • 印花税购销合同改为买卖合同
  • 增量留抵税额会计处理
  • 股权转让和变更法人一样吗?
  • 小微企业应纳税所得额超过300万怎么办
  • 进项税额留抵科目
  • 其他应收款属于会计要素中的
  • 房地产开发企业资质等级有几个
  • 基金会计核算的核算主体是
  • 委托其他公司开票收款
  • 限售股所得税的优惠政策
  • 五分钟了解外出经营活动税收管理证明
  • 支付境外销售佣金怎么做
  • 租赁合同印花税双方都要交吗
  • 小规模纳税人日用品增值税税率
  • 公司法人变更账务需要重新建立吗
  • 合作保证金规定
  • 营业执照办理流程需要多久
  • 注销税务登记后多久注销工商登记
  • 房产评估价偏低
  • 如何正确安装锯条
  • 增值税发票是不是可以抵税
  • 任务管理器无法完成操作拒绝访问
  • sentstrt.exe - sentstrt进程是什么文件 有什么用
  • netddeclnt.exe - netddeclnt是什么进程 有什么用
  • 前端生成pdf文件
  • 酒店代销合同范本
  • 前端启动项目命令
  • 职工工资扣税比例
  • 工会经费零申报怎么填
  • vuecli3创建项目的过程
  • 报税货物范围包括
  • fall 瀑布
  • 报销钱大写数字
  • node.js环境搭建
  • 印花税是1%吗
  • wordpress图片模板
  • 如何处理经营租赁合同
  • 用工会经费给员工发工资
  • 代收代缴水费可以加多少损耗
  • 个人重组债务怎么交税
  • 年终奖的个税税率
  • sql语句求中位数
  • 企业购进材料取得增值税专用发票
  • 不动产租赁服务包括哪些
  • 固定资产加速折旧的方法有哪些
  • 以前年度应收账款贷方余额如何调整
  • 发票与销售小票有什么区别?
  • 进项税额加计10
  • 结汇时和月底结转汇兑损益
  • 一般哪些收据可以抵扣
  • 政府扶助资金
  • 土地出让金如何核算
  • 企业收到返利怎么做账
  • mysql 5.7.18 winx64安装配置方法图文教程
  • windows桌面快捷方式怎么创建
  • windows10网页打不开怎么办
  • window10玩英雄联盟卡顿怎么办
  • ubuntu不支持设置属性
  • linux dicom
  • mm pp dpps进程
  • win8 metro应用
  • 升级win10免费吗
  • ssh客户端软件
  • linux应用程序在哪个目录
  • QT for Android HelloWorld实现
  • div+css布局的步骤
  • perl-v
  • unity获取父节点
  • javascript运算
  • 文章标题作用答题模板
  • 详解JavaScript ES6中的Generator
  • python文法
  • 浅谈建筑地基基础加固施工技术亲
  • jquery的validate前端表单验证
  • 中心组学习的意义?
  • 巩义市公路管理局 邰江华简历
  • 贵州电子税务总局
  • 社保缴费信息提醒怎么改
  • 新疆喀什泽普县教育局联系电话
  • 宁阳旧城改造名单
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设