python类的特性
#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类的特性的更多相关文章
- Python 类的特性讲解
类的特性讲解 类的特性 #定义一个类, class是定义类的语法,Role是类名, (object)是新式类的写法,必须这样 写,以后再讲为什么 class Role(object): #初始化函数, ...
- Python的高级特性8:你真的了解类,对象,实例,方法吗
Python的高级特性1-7系列是本人从Python2过渡3时写下的一些个人见解(不敢说一定对),接下来的系列主要会以类级为主. 类,对象,实例,方法是几个面向对象的几个基本概念,其实我觉得很多人并不 ...
- 转:从pickle看python类成员的动态加载和类的定位
pickle是Python轻便的对象序列化工具.使用pickle可以方便地把python对象写入文件对象中,或者像soap那样在socket间传送. 按照python的一贯作风,类的成员在 ...
- python 类知识点总结
python 类知识点总结 面向对象思想: 1.设计的时候,一定要明确应用场景 2.由对象分析定义类的时候,找不到共同特征和技能不用强求 1.简述类.对象.实例化.实例这些名词的含义: 类:从一组对象 ...
- python类:magic魔术方法
http://blog.csdn.net/pipisorry/article/details/50708812 魔术方法是面向对象Python语言中的一切.它们是你可以自定义并添加"魔法&q ...
- (转)python类:magic魔术方法
原文:https://blog.csdn.net/pipisorry/article/details/50708812 版权声明:本文为博主皮皮http://blog.csdn.net/pipisor ...
- Python学习笔记之面向对象编程(三)Python类的魔术方法
python类中有一些方法前后都有两个下划线,这类函数统称为魔术方法.这些方法有特殊的用途,有的不需要我们自己定义,有的则通过一些简单的定义可以实现比较神奇的功能 我主要把它们分为三个部分,下文也是分 ...
- python类和元类
python 类和元类详解 小麦麦子 2016-09-06 11:11:00 今天在网上看到一篇关于python语言中类和元类(metaclass)的一些讲解和简单运用,感觉对pyth ...
- Python类对象
python类对象 python类对象支持两种操作:属性引用和实例化. 属性引用 使用 Python 中所有属性引用所使用的标准语法: obj.name. 有效的属性名称是类对象被创建时存在于类命名空 ...
随机推荐
- Linux下yum升级安装PHP 5.5
我的系统是Centos 6.5 ,安装lnmp是直接yum安装的,php版本为5.4的,当安装了最新的phpMyAdmin(4.5.1)数据库管理软件后发现不支持php5.4使用,所以只好升级下php ...
- JS中的this对象详解
JS中this关键字很常见,但是它似乎变幻莫测,让人抓狂.这篇文章就来揭示其中的奥秘. 借助阮一峰老师的话:它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用.这句话看似平常,可是要非常注意 ...
- knockout.js $index 做列表索引小技巧
我们都知道,在foreach binding中,使用$index可以得到基于0的索引序号,但在列表显示中,我们更希望这个索引是从1开始的,怎么处理呢? 这里,有个小技巧:使用$index() + 1, ...
- C#枚举描述获取
public static class EnumExtension { public static string GetDescription(this Enum value) ...
- hibernate进行多表联合查询
hibernate是按照hql语句来进行查询的, 里面所使用的表名, 其实是实体类的名字, hql语句的写法并没有多大差别, 是在返回结果的时候要稍微做一些处理 //使用hibernate进行多表查询 ...
- mac操作快捷键
- IOS网络请求原理
1,为什么要用到网络, 只有通过网络跟外界进行数据交互,数据更新,应用才能保持哦新鲜.活力 如果没有网络,也就缺少数据变化.变成一滩死水. 2, 良好的移动网络应用 = 良好的UI + 良好的用户体 ...
- 命令行参数 main()函数设计
一.main()函数的形式 int main( void )--无参数形式 { ... return 0; } int main( int argc, char *argv[] )--带参数形式 { ...
- over分析函数
select empno,ename,job,sal,sum(sal) over (order by empno) 累计 from emp ;
- jQuery学习总结(二)
简单选择器: 在使用jQuery 选择器时,我们首先必须使用“$()”函数来包装我们的CSS 规则. 而CSS 规则作为参数传递到jQuery 对象内部后,再返回包含页面中对应元素的jQuery 对象 ...