iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >浅谈Python中带_的变量或函数命名
  • 212
分享到

浅谈Python中带_的变量或函数命名

浅谈变量中带 2022-06-04 19:06:57 212人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

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

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

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

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

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

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

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

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


class Foo(object):
  def __init__(self):
    self.__name = 'private name'
 
  def getname(self):
    return self.__name
 
  def __spam(self):
    print 'private method'
 
  def bar(self):
    self.__spam()

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


>>> f = Foo()
>>> f.__name
 
Traceback (most recent call last):
 File "<pyshell#1>", line 1, in <module>
  f.__name
AttributeError: 'Foo' object has no attribute '__name'
>>> f.__spam()
 
Traceback (most recent call last):
 File "<pyshell#2>", line 1, in <module>
  f.__spam()
AttributeError: 'Foo' object has no attribute '__spam'

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


>>> f._Foo__name
'private name'
>>> f._Foo__spam()
private method

这样就可以访问了。

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


class Goo(Foo):
  def __spam(self):
    print 'private method of Goo'

重写了__spam方法,运行:


>>> g = Goo()
>>> g.bar()
private method

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

以单下划线_开头的命名

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

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

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

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

总结

以上就是本文关于浅谈Python中带_的变量或函数命名的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

--结束END--

本文标题: 浅谈Python中带_的变量或函数命名

本文链接: https://www.lsjlt.com/news/15811.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 浅谈Python函数式编程的返回函数与匿名函数
    目录返回函数匿名函数返回函数 所谓返回函数,顾名思义,就是把函数作为返回值。高阶函数除了可以将函数作为参数之外,还可以将函数作为结果进行返回。下面来实现一个可变参数的连乘,求积函数可...
    99+
    2023-05-15
    Python函数 Python函数式 Python返回函数 Python匿名函数
  • 浅谈python的函数知识
    目录函数参数的两大分类位置参数可变长参数名称空间总结函数参数的两大分类 形式参数 函数定义阶段括号所写的参数 实际参数 函数调用阶段括号内传入的参数 形参与实参的关系...
    99+
    2024-04-02
  • 浅谈Python中的函数传递问题
    目录函数参数如何传递key-value方式传递参数:动态长度参数传递参数是否会被函数攥改?总结函数参数如何传递 key-value方式传递参数: 下面是非常常见的传递方式,参数名写直...
    99+
    2024-04-02
  • 浅谈Python当中Lambda函数的用法
    今天来给大家推荐一个Python当中超级好用的内置函数,那便是lambda方法,本篇教程大致和大家分享:什么是lambda函数lambda函数过滤列表元素lambda函数和map()方法的联用lambda函数和apply()方法的联用什么时...
    99+
    2023-05-14
    Python 内置函数 lambda
  • 浅谈对Python变量的一些认识理解
    一、Python变量 在大多数语言中,为一个值起一个名字时,把这种行为称为“给变量赋值”或“把值存储在变量中”。不过,Python与许多其它计算机语言的有所不同,它并不是把值存储在变...
    99+
    2024-04-02
  • 习题18:命名,变量,代码,函数
    函数可以做三样事情:1. 它们给代码片段命名,就跟‘变量’给字符串和数字命名一样2. 它们可以接受参数,就跟之前的脚本argv一样3. 通过使用#1和#2,它们可以让你创建‘微型脚本’或者‘小命令’可以使用def新建函数,练习代码如下# c...
    99+
    2023-01-30
    习题 变量 函数
  • python变量的命名规则
    这篇文章主要讲解了“python变量的命名规则”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python变量的命名规则”吧!变量的命名:       ...
    99+
    2023-06-02
  • python中的变量命名规则详情
    目录1.变量命名1)命名的规范性2)编程语言常用驼峰命名法2. 变量命名的描述性3.变量名尽量短,但是不要太短4.合理使用变量5. 变量定义尽量靠近使用6. 合理使用namedtup...
    99+
    2024-04-02
  • 前端变量函数命名规则总结
    目录引言不要嫌弃函数名过长变量 / 函数 命名头部什么时候用 has , 什么时候用 is一个好的命名需要遵循的规则函数变量使用缩写比较通用的缩写常量命名单词拼接 加深语义化引入自定...
    99+
    2024-04-02
  • 浅谈python内置函数callable的用法
    callable函数可用于判断一个对象是否可以被调用,若对象可以被调用则返回True,反之则返回False。所谓可调用,是指代码里可以在对象后面跟上一对小括号,函数,方法,类都是可以...
    99+
    2023-05-16
    python内置函数 python callable函数
  • 如何浅析.NET中文变量及方法的命名规则
    这期内容当中小编将会给大家带来有关如何浅析.NET中文变量及方法的命名规则,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。我们将介绍.NET中文变量及方法的命名规则,相信通过规范的.NET中文变量及方法的命...
    99+
    2023-06-17
  • 使用函数或 st.session_state 的返回变量
    问题内容 我正在学习 streamlit 框架和 python。我的问题与代码设计有关。我正在使用函数将转换应用于 pandas 数据帧并返回变量以将其传递给另一个函数或显示给用户。另...
    99+
    2024-02-10
  • Python变量的命名约定和常见命名方法
    Python变量命名规则及常见命名方式 在Python编程中,变量的命名是非常重要的,良好的命名习惯可以使代码更易读和易懂。本文将介绍Python的变量命名规则以及常见的命名方式,并提供具体的代码示例。 一、Python变量命名...
    99+
    2024-01-20
    变量命名规则 - 可以由字母 数字和下划线组成 - 区分大小写
  • Kotlin开发中open关键字与类名函数名和变量名的使用方法浅析
    目录1 Kotlin open 在类名中的使用2 Kotlin open 在函数名中的使用3 Kotlin open 在变量名中的使用这篇文档中,我们将解释如何以及为什么将 open...
    99+
    2023-02-17
    Kotlin open关键字 Kotlin函数名 Kotlin变量名
  • 命名来自多重返回函数的接收变量
    对于一个Golang开发者来说,牢固扎实的基础是十分重要的,编程网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《命名来自多重返回函数的接收变量》,主要介绍了,希望对大家的知识积累有所帮助...
    99+
    2024-04-05
  • 浅析python中5个带key的内置函数
    目录1.max取最大值函数2.min取最小值函数3.filter过滤函数实例1实例24.map序列映射函数实例1实例25.sorted序列排序函数(1) cmp参数(2)key参数(...
    99+
    2024-04-02
  • Python学习中所需的变量命名规范
    学习Python时需要了解的变量命名规范 在学习Python编程语言时,一个重要的方面是学习如何正确命名和使用变量。变量是用来存储和表示数据的标识符。良好的变量命名规范不仅能提高代码的可读性,还能减少出错的可能性。本文将介绍一些...
    99+
    2024-01-20
    Python 规范 变量命名
  • golang函数命名约定的演变
    golang 函数命名约定演变如下:早期阶段(go 1.0):无正式约定,使用骆驼式命名。下划线约定(go 1.5):导出函数大写开头,以下划线前缀。工厂函数约定(go 1.13):创建...
    99+
    2024-05-01
    go语言 函数命名 golang 代码可读性
  • C++ 函数命名规则的演变
    c++++ 函数命名规则经历了从经典“匈牙利表示法”到现代描述性命名的演变。现代规则包括:使用有意义的名称、抽象化、避免前缀、使用小驼峰命名法和考虑命名空间。与经典规则相比,现代命名更有...
    99+
    2024-04-24
    c++ 函数命名 代码可读性
  • 浅谈numpy 中dot()函数的计算方式
    如下所示: a = np.arange(1, 5).reshape(2, 2) b = np.arange(2, 6).reshape(2, 2) c = a * b dot =...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作