位置: 编程技术 - 正文

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

  • 附加税做账交多了如何冲回
  • 小规模忘了报税怎么办
  • 企业税收收入怎么计算
  • 地税补缴社保
  • 增值税销项抵扣报税后有效期是多长时间
  • 销售货物产生的运费如何开票
  • 公司收到银行承兑汇票会计分录
  • 服务业发票税率是多少
  • 销售型公司进销项时会计分怎么写?
  • 劳务费税率公式是什么
  • 增值税专用发票税率
  • 增值税扣税凭证抵减销项税额
  • 法人变更了之前的支票还能进账吗?
  • 在建工程转固定资产当月提折旧吗?
  • 租金一次性付清的账务处理
  • 专用发票验旧后还领不到发票
  • 增值税专票可以重开吗
  • 收到工程结算单,怎么回复不认可
  • 电脑显示器模糊不清晰是什么原因
  • 购入成品油怎么做会计分录
  • 侵权行为 法律行为
  • linux killall
  • 腾讯电脑管家下载
  • 固定资产报废怎么处理
  • 房地产企业困境
  • vue大屏组件库
  • services. exe
  • 增值税发票进项抵扣怎么操作
  • vue调整图标大小
  • php写一个简单的单例模式
  • 小规模纳税人本年累计金额
  • php底层原理
  • 新个税讲解
  • ip add命令是什么意思
  • ps卸载没反应
  • 个人发票抬头是自己的名字吗
  • dede织梦怎么转成zblog
  • centos 安装dpkg
  • mongodb数据库的作用
  • 待报解预算收入怎么做账
  • 印花税如何记账入账
  • 企业的资产必须符合哪些条件
  • 在建工程如何转固
  • 公司房租只有房东交吗
  • 企业的预付账款属于金融资产吗
  • 固定资产折旧的计算方法
  • 增值税减免附什么凭证
  • 债权投资持有期间的账务处理
  • 偿债基金专户
  • 企业收到加盟费怎么开发票
  • 领用材料什么会计科目
  • 诉讼代理费计入成本吗
  • 融资租入的设备怎么入账
  • 营业收入净额怎么算出来
  • 职工福利费的核算内容
  • SQL语句查询数据量
  • linux配置mysql数据库远程连接失败的解决方法
  • win10周年版
  • xp桌面字体有阴影怎么去掉
  • imac如何删除客人用户
  • windowsxp怎么改windows7
  • linux进程和线程底层实现原理一样吗
  • win8系统怎么搜索文件
  • xp桌面快捷方式不见了
  • Win10装不上是什么原因
  • win10系统无法打开百度网盘
  • 铁嘴王指什么动物
  • ExtJS 2.0实用简明教程之应用ExtJS
  • python如何用turtle
  • Android studio配置环境
  • node socket hang up
  • javascript总结笔记
  • python面向对象编程心得体会
  • python运行flask
  • python convexhull
  • 贵州省网上税务局要那个版本
  • 深圳税务 qzzn
  • 联合举办的活动
  • 印刷行业费用标准
  • 广州地税网上服务大厅地址
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设