zoukankan      html  css  js  c++  java
  • python中以下划线开头的变量名的特点

    • _xx:前置单下划线,私有化属性或方法,一般来讲,变量名_xx被看作是“私有 的”,在模块或类外不可以使用。当变量是私有的时候,用_xx 来表示变量是很好的习惯。类对象和子类可以访问,这并不能完全做到真正的私有,只是约定俗成的而已,这样写表示不希望这个变量在外部被直接调用
    • __xx:前置双下划线,私有化属性或方法,无法在外部直接访问(名字重整所以访问不到,只能是允许这个类本身进行访问了。连子类也不可以)
    • __xx__:前后双下划线,系统定义名字(这就是在python中强大的魔法方法),因为变量名__xxx__对Python 来说有特殊含义,对于普通的变量应当避免这种命名风格。
    • xx_:后置单下划线,用于避免与Python关键词的冲突
    • 如以下例子所示,我在test类中定义了x,_x和 __x三个属性,并创建了test的类对象t,对这三个属性进行访问,__x不能被访问到
    • 1 class test(object):
      2  def __init__(self):
      3  self.x = 10
      4  self._x = 20
      5  self.__x = 30
      6 t = test()
      7 print(t.x) # 10
      8 print(t._x) # 20
      9 # print(t.__x) # AttributeError: 'test' object has no attribute '__x'
  • 相关阅读:
    eclipse里面已经提交的svn提交
    session 失效
    svn版本管理
    前端控制台调试经验
    python001环境搭建及入门 http://python.jobbole.com/81332/
    eclipse自己写makefile 建工程
    编码风格
    算法导论第22章22.2广度优先搜索
    vnc相关
    eclipse相关设置
  • 原文地址:https://www.cnblogs.com/qinlai/p/13154526.html
Copyright © 2011-2022 走看看