学过编程语言的人员,都知道私有变量在编程中必不可少,与Java和C语言用private关键字定义私有变量不同,Python是在变量前面加上双横杠(例如:__test)来标识,

Python私有变量只能在类内部使用,不被外部调用,且当变量被标记为私有后,调用时需再变量的前端插入类名,在类名前添加一个下划线,即“_ClassName__变量名”形式。

Python私有变量或方法在自身类中不能直接调用,需通过在类中定义接口,实现私有变量的引用、读取和修改。

除了Python私有变量是使用“_”定义之外,还有两种特殊变量,分别是:

1.  _xx 以单下划线开头的表示的是protected类型的变量。即保护类型只能允许其本身与子类进行访问。若内部变量标示,如: 当使用“from M import”时,不会将以一个下划线开头的对象引入 。

2.  __xx__定义的是特列方法。用户控制的命名空间内的变量或是属性,如init , __import__或是file 。只有当文档有说明时使用,不要自己定义这类变量。

其实,Python并没有真正的私有化支持,用下划线得到的也是伪私有,因此,在Python编程中应尽量避免使用定义以下划线开头的变量!

转载于:https://blog.51cto.com/12306609/2161250

Python私有变量的用法相关推荐

  1. Python私有变量的用法是什么?

    学习过编程语言的人应该都知道,私有变量在编程中必不可少,有着十分重要的作用.那么Python中什么是私有变量?Python私有变量的用法是什么?本篇文章为你介绍一下. 与Java和C语言用privat ...

  2. python私有变量和继承_python私有变量子类如何继承-女性时尚流行美容健康娱乐mv-ida网...

    女性时尚流行美容健康娱乐mv-ida网 mvida时尚娱乐网 首页 美容 护肤 化妆技巧 发型 服饰 健康 情感 美体 美食 娱乐 明星八卦 首页  > 高级搜索 浅谈 python 中的 私有 ...

  3. python 私有变量得访问_Python 私有变量的访问和赋值

    首先我们这里先描述下: Python中,变量名类似__x__的,以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的(比如 __doc__, __init__等),不是priva ...

  4. python私有变量什么意思_Python私有变量解析

    这篇文章主要为大家详细介绍了Python私有变量解析,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! 私有变量表示方法 ...

  5. Python 私有变量的访问和赋值

    首先我们这里先描述下: Python中,变量名类似__x__的,以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的(比如 __doc__, __init__等),不是priva ...

  6. Python(私有变量)类中的特殊方法

    2019独角兽企业重金招聘Python工程师标准>>> 类中的特殊方法 一般说来,特殊的方法都被用来模仿某个行为.例如,如果你想要为你的类使用x[key]这样的索引操作(就像列表和元 ...

  7. python 私有变量和函数

    使用下划线 一个单下划线 (_)开头的变量或函数是一个私有变量或函数,表示该变量或函数应该在类的内部访问,而不应在类的外部直接访问.这不是强制的,可以在外部访问单下划线开头的变量和函数,但是规范上这样 ...

  8. python私有变量什么意思_python为什么有私有方法和变量

    1. 访问安全,其实也没有决定的安全 >>> class humer(object): ... def __init__(self, name): ... self.name = n ...

  9. python私有变量公开变量说明

    先上代码 class people:name="l***" __sex="女"def __init__(self,age):self.age=agedef __ ...

最新文章

  1. python代码需要背吗-python代码运行需要编译吗
  2. dlib做人脸检测判断有没有检测到人脸
  3. Artlantis 2020中文版
  4. STM32F103ZET6 点灯的三种操作方式(库函数、寄存器、位操作)
  5. 排序:快速排序与归并排序
  6. NeurIPS 2020 | Glance and Focus: 通用、高效的神经网络自适应推理框架
  7. zabbix使用JMX监控tomcat性能
  8. Custom Corporate Background for NetBeans Platform Applications
  9. 1.深入理解计算机系统---计算机系统漫游
  10. 再说“两本交换机图书内容完全不一样”
  11. 联想服务器linux系统raid驱动,SUSE Linux服务器企业版加载阵列卡驱动程序步骤
  12. springboot 动态指定日志路径(logback) 自动跟随项目路径
  13. 聊天群组营销-把小米磨成粉,再做成团
  14. 16进制图片数据转JPG格式和BMP格式
  15. 高级性能测试系列《34.普通性能场景:​jmeter的线程数,有没有限制?线程数+ramp-up时间,怎么设置才比较合理?》...
  16. adb install 安装错误常见列表
  17. Task运行过程分析1
  18. 每日一题·648.单词替换·前缀树
  19. jenkins 流水线参数化构建例子
  20. 学习 RestTemplate 一篇文章就够了 !!!

热门文章

  1. bootstrap 简介
  2. 【Java中级】(二)集合框架
  3. 转 Caffe学习系列(4):激活层(Activiation Layers)及参数
  4. 继承20161223
  5. 利用数据库来填充UltraWebTree
  6. Android之使用AlertDialog.Builder类创建带列表的对话框和带自己所布局视图的对话框
  7. C# 利用类名字符串调用并执行类方法
  8. ajax上传文件表单,图片、文件无刷新上传,jquery.form.js的使用
  9. 几百万的数据查找重复值_如何快速查找出Excel中的重复数据,多角度分析
  10. python六种数据类型不可变_python面试题(-)可变数据类型与不可变数据类型