#encoding=utf-8

 class Province:

     #静态字段
memo = '这里是静态变量' def __init__(self,name,capital,leader,flag):
  #动态字段
  self.Name = name
  self.Capital = capital
  self.Leader = leader   #私有字段
  self.__Thailand = flag #动态方法
def sports_meet(self):
  print self.Name + '正在开会'; #静态方法
@staticmethod
def foo(func=''):
  print '这里是静态方法'+func #直接把方法变为属性访问
@property
def Bar(self):
  return 'do something' #间接访问私有属性
def show(self):
  print self.__Thailand #通过property访问私有属性
#只读
@property
def Thailand(self):
  return self.__Thailand #修改私有属性
@Thailand.setter
def Thailand(self,value):
  self.__Thailand = value #私有方法
def __sha(self):
  print '打印私有方法'    #把类当作函数访问
def __call__(self):
      print 'call test'
 #访问动态属性、方法,需要new

 pro = Province('山西','太原','小鹏',True)

 print pro.Name
pro.sports_meet()
pro.show() print pro.Bar
print pro.Thailand
#说明self就相当于把pro对象传入,及self.Name = pro.Name,本质上一样的 #访问静态的属性、方法
print '------------'
print Province.memo
Province.foo() #另外动态的可以访问静态的属性、方法
print '------------'
print pro.memo
pro.foo(',但可以用对象访问') print '--------'
#设置私有属性
print pro.Thailand
pro.Thailand = False
print pro.Thailand print '------'
  pro()

山西

山西正在开会

True

do something

True

------------

这里是静态变量

这里是静态方法

------------

这里是静态变量

这里是静态方法,但可以用对象访问

--------

True

False

--------

call test

python类的特性的更多相关文章

  1. Python 类的特性讲解

    类的特性讲解 类的特性 #定义一个类, class是定义类的语法,Role是类名, (object)是新式类的写法,必须这样 写,以后再讲为什么 class Role(object): #初始化函数, ...

  2. Python的高级特性8:你真的了解类,对象,实例,方法吗

    Python的高级特性1-7系列是本人从Python2过渡3时写下的一些个人见解(不敢说一定对),接下来的系列主要会以类级为主. 类,对象,实例,方法是几个面向对象的几个基本概念,其实我觉得很多人并不 ...

  3. 转:从pickle看python类成员的动态加载和类的定位

      pickle是Python轻便的对象序列化工具.使用pickle可以方便地把python对象写入文件对象中,或者像soap那样在socket间传送.     按照python的一贯作风,类的成员在 ...

  4. python 类知识点总结

    python 类知识点总结 面向对象思想: 1.设计的时候,一定要明确应用场景 2.由对象分析定义类的时候,找不到共同特征和技能不用强求 1.简述类.对象.实例化.实例这些名词的含义: 类:从一组对象 ...

  5. python类:magic魔术方法

    http://blog.csdn.net/pipisorry/article/details/50708812 魔术方法是面向对象Python语言中的一切.它们是你可以自定义并添加"魔法&q ...

  6. (转)python类:magic魔术方法

    原文:https://blog.csdn.net/pipisorry/article/details/50708812 版权声明:本文为博主皮皮http://blog.csdn.net/pipisor ...

  7. Python学习笔记之面向对象编程(三)Python类的魔术方法

    python类中有一些方法前后都有两个下划线,这类函数统称为魔术方法.这些方法有特殊的用途,有的不需要我们自己定义,有的则通过一些简单的定义可以实现比较神奇的功能 我主要把它们分为三个部分,下文也是分 ...

  8. python类和元类

    python 类和元类详解  小麦麦子 2016-09-06 11:11:00        今天在网上看到一篇关于python语言中类和元类(metaclass)的一些讲解和简单运用,感觉对pyth ...

  9. Python类对象

    python类对象 python类对象支持两种操作:属性引用和实例化. 属性引用 使用 Python 中所有属性引用所使用的标准语法: obj.name. 有效的属性名称是类对象被创建时存在于类命名空 ...

随机推荐

  1. android BroadcastReceiver

    AndroidManifast.xml <?xml version="1.0" encoding="utf-8"?> <manifest xm ...

  2. 打开office2010里面的access,总是提示要配置Office single image

    刚安装了,office2010,打开里面的access时,总是提示要配置Office single image,但打开word和excel没问题,很是不舒服 在网上找到N种方法,试下来还是不行. 后来 ...

  3. 使用 IntraWeb (40) - 自定义 Session 数据

    修改 UserSessionUnit 单元: unit UserSessionUnit; interface uses IWUserSessionBase, SysUtils, Classes, IW ...

  4. unreal3之FName及潜在bug

    FName是unreal3里对字符串高效处理的一种机制 基本原理就是把字符串hash存起来,然后每个字符串就只需要用一个数组索引值来表示了 FName的属性: NAME_INDEX Index; IN ...

  5. Browser设置UA值

    SWE Browser中的OptionMenu是Controller通过onKeyDown监听KEYCODE_MENU来显示的 public boolean onKeyDown(int keyCode ...

  6. vi/vim学习

    1.vi3中模式 一般模式.编辑模式.命令模式2.快捷操作 i.I插入:i在目前的光标所在处插入文字:I(大写i)在行首插入 a.A 增加:a由光标所在的下一个字开始输入:A由光标所在行的最后增加 o ...

  7. freeCodeCamp:Repeat a string repeat a string

    重复一个指定的字符串 num次,如果num是一个负数则返回一个空字符串. /*思路 fo循环将字符串重复num次并组成数组 将数组组成新的字符串并返回 */ function repeat(str, ...

  8. POJ2396_Budget

    题意为给一个矩形数字阵,给出一些限制条件,包括每行和每列的和,还有一些位置的数值范围,求出满足情况的一个. 首先建图,源点->行和->列和->汇点,显然,行和列之间的边为那个数字的大 ...

  9. public <T> void show(T t),void前面的泛型T是什么作用

    public <T>这个T是个修饰符的功能,表示是个泛型方法,就像有static修饰的方法是个静态方法一样. <T> 不是返回值,表示传入参数有泛型 public static ...

  10. js-事件、正则表达式

    AddEventListener()之中有三个参数,分别是(1)事件的名称(注:不要加on,例:click才是点击事件的名称)(2)需要执行的function(){} (3)布尔类型(false表示的 ...