#!/usr/bin/python

class Person:
   '''some words content or descriptions!'''
name='luomingchuan'
_age = 18
__mail = 'gordon.tongji'
def __init__(self):
self.normal = 'normal'
self._single = 'single'
self.__double = 'double' def print_self(self):
print 'instance variables: ', self.normal,self._single,self.__double
print 'class variables: ',self.name,self._age,self.__mail

  python类的理解对于编程蛮重要的,对于我个人来说,我习惯这样编写,双引号的可以用来描述私有变量,单引号的用来描述实例变量,不带引号的用来描述类的变量,这样系统化分后,以上代码就可以书写为

#!/usr/bin/python

class Person:
global global_var
name='luomingchuan'
age = 18
__mail = 'gordon.tongji'
def __init__(self):
self._normal = 'normal'
self._single = 'single'
self.__double = 'double' def print_self(self):
print 'instance variables: ', self.normal,self._single,self.__double
print 'class variables: ',self.name,self._age,self.__mail

  接下来谈谈对三种变量的理解,global是使用全局的一个变量,这个只是在这声明,其实python的global我的理解是类似于全局的静态变量。类的变量是针对与这一类的变量,他们共享的变量,初值只在第一次实例化时候赋予,类似于共享于类之间的全局变量,是这个类所共同拥有的,当然和全局变量还是有区别的话,实例变量是伴随这实例化的这个实例的,访问的时候一定要使用self才能够获得,其定义的时候是在__init__()函数内定义的。私有变量貌似外面不可获得,其实可以通过__classname__doublequotename获得。

#!/usr/bin/python

class Person:
name='luomingchuan'
_age = 18
__mail = 'gordon.tongji'
count = 0
def __init__(self):
self.normal = 'normal'
self._single = 'single'
self.__double = 'double'
Person.count += 1
      #self.count += 1
      #count += 1 will cause error
def print_self(self):
print 'instance variables: ', self.normal,self._single,self.__double
print 'class variables: ',self.name,self._age,self.__mail def __del__(self):
Person.count -= 1
        #self.count -=1 def countPerson(self):
print self.count

python比较有趣的是,竟然定义在内部的静态变量不能通过在内部直接调用,这能通过self.来访问或者类名加点,

对python变量的理解的更多相关文章

  1. 深入理解Python变量与常量

    深入理解Python变量与常量 变量是计算机内存中的一块区域,变量可以存储规定范围内的值,而且值可以改变.基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中.常量是一块只读的内 ...

  2. Python变量理解

    变量进阶(理解) 01. 变量的引用 变量 和 数据 都是保存在 内存 中的 在 Python 中 函数 的 参数传递 以及 返回值 都是靠 引用 传递的 1.1 引用的概念 在 Python 中 变 ...

  3. python之总体理解

    作为脚本,python具备了弱类型语言的灵活性,便捷性.这在日常的开发使用中能够大幅度的减轻开发人员的编码负担,开发者也能够将精力集中在程序的逻辑管理和总体构架设计上.一般而言,随着经验的积累,开发人 ...

  4. 【python系列】--Python变量和数据类型

    python数据类型 一.整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序中,整数的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等. 计算机由于使用 ...

  5. #5 Python变量与输入输出

    前言 学习一门编程语言,最基本的无非不过学习其变量规则.条件语句.循环语句和函数,接下来的几节将开始记录这些基本的语法,本节主要记录变量规则! 一.Python输入输出 在说Python变量之前,先补 ...

  6. python变量名感悟

    我感悟的是python的变量名其实就可以理解为C/C++中的指针! 1.python的变量在使用之前必须赋值,就像指针在使用之前不能为空. 2.python的内存可以用del释放,C++可以用dele ...

  7. python变量和简单的数据类型

    1.运行hello_world.py时发生的情况 运行hello_world.py时,Python都做了些什么呢?实际上,即便是运行简单的程序,Python所做的工作也相当多: #!/usr/bin/ ...

  8. Python变量和数据类型(入门2)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6400809.html 本文出自:[Edwin博客园] Python变量和数据类型 一.整数 int = 20 ...

  9. python入门课程 第3章 Python变量和数据类型

    第3章 Python变量和数据类型3-1 Python中数据类型计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形 ...

随机推荐

  1. jbox如果弹不出,放在body里

    body> <form id="form1" runat="server"> <script type="text/javas ...

  2. Android拍照,录制视频,相机简单功能实现

    1.效果图,功能没有录制出来. 基本实现了拍照,录制视频,前后摄像头切换的功能,可以转屏,聚焦. 代码在最下面,可以看代码,运行apk看实际效果. 2.权限不能忘 <uses-permissio ...

  3. linux下使用Android studio启动模拟器时提示 waiting for target device to come online 的问题

    方法来自:http://stackoverflow.com/questions/42612468/how-can-i-get-more-information-about-waiting-for-ta ...

  4. 开源作品-ThinkPHP在线分析工具(单文件绿色版)-TPLogAnalysis_PHP_1_0

    TPLogAnalysis_PHP_1_0 前言:项目开发基于ThinkPHP框架,但是在调试程序的时候,没有一款日志可视化分析工具.在网络也找不到任何相关的TP日志分析工具.求人不如求己,于是决定抽 ...

  5. 关于table排版

    colspan和rowspan这两个属性用于创建特殊的表格. colspan是“column span(跨列)”的缩写.colspan属性用在td标签中,用来指定单元格横向跨越的列数:   在浏览器中 ...

  6. BZOJ 1264: [AHOI2006]基因匹配Match DP_树状数组_LCS转LIS

    由于有重复数字,我们以一个序列为基准,另一个序列以第一个序列每个数所在下标为这个序列每个数对应的值. 注意的是,拆值的时候按照在第一个序列中的位置从大到小排,强制只能选一个. 最后跑一边最长上升子序列 ...

  7. jq操作table追加td

    示例 代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  8. java 文件夹不存在的解决方案

    使用new File(path).mkdirs()创建所需路径,几十有多层不存在的路径也可以直接创建,切记方法名以s结尾,不带s的智能创建一层不存在的目录,不能自动创建多层目录结构.

  9. jQuery元素属性操作

    在jQuery中,用attr()方法来获取或者设置元素属性,removeAttr()方法用来删除元素属性. attr() 实例: var $para=$('p');//获取<p>节点 va ...

  10. 简述JVM、JRE、JDK的关系及作用

    1.JVM:java虚拟机 . 作用:保证java语言跨平台. 2.JRE:java运行环境 jre=java虚拟机+核心类库. 作用:java程序的运行环境. 3.JDK :java开发工具集.JD ...