反运算: 当左操作数不支持响应的操作时被调用 如:对象(a+b),如果a对象有__add__方法,b对象的__radd__不会被调用 只有当a对象的__add__方法没有实现或者不支持相应的操作才会调用b的__radd__方法 如:>>> class Nint(int): ... def __rad...
分类:
其他好文 时间:
2015-10-21 08:08:31
阅读次数:
260
属性访问:__getattr__(self,name) 定义当用户试图获取一个不存在的属性时的行为__getattribute__(self,name) 定义当该类的属性被访问时的行为__setattr__(self,name,value) 定义当用一个属性被设置时的行为__delattr__(se...
分类:
其他好文 时间:
2015-10-21 08:07:05
阅读次数:
164
<?php
header("content-type:text/html;charset=UTF-8");
classPerson{
//私有的成员属性,对直接访问象
private$name;
private$age;
private$sex;
//魔术方法__construct(),__set(),__unset(),__isset(),__unset().....
function__construct($name="name1..
分类:
Web程序 时间:
2015-10-16 19:01:58
阅读次数:
186
构造方法在Python中创建一个构造方法很容易。只要把init方法的名字从简单的init修改为魔法版本__init__即可:>>> class FooBar:... def __init__(self):... self.somevar=42... >>> f=FooBar()>>...
分类:
编程语言 时间:
2015-06-02 23:19:47
阅读次数:
165
刚刚接触Python,今天就是怎么也调试不过去了,上网上查直到晚上才查到一个有效信息,真是坑啊!原来Python中的这些“魔法”方法的命名里就有陷阱……上图中的那两个红圈圈,一定要记住哦,这些Python自带的方法,比如str和init前后都是两个"_",写一个"_"按F5运行肯定有问题!拿我的同事...
分类:
编程语言 时间:
2015-05-27 18:59:11
阅读次数:
137
Python 魔术方法指南入门构造和初始化构造定制类用于比较的魔术方法用于数值处理的魔术方法表现你的类控制属性访问创建定制序列反射可以调用的对象会话管理器创建描述器对象持久化对象总结附录介绍此教程为我的数篇文章中的一个重点。主题是魔术方法。 什么是魔术方法?他们是面向对象的Python的一切。他们是...
分类:
编程语言 时间:
2015-04-16 15:39:52
阅读次数:
306
__str__ : print 对象__repr__: repr(对象)__iter__: 如果一个类想被用于for ... in循环,类似list或tuple那样,就必须实现一个__iter__()方法,该方法返回一个迭代对象,然后,Python的for循环就会不断调用该迭代对象的next()方法...
分类:
其他好文 时间:
2015-02-05 19:58:04
阅读次数:
219
Python中类的实例化是由Python解释器先后调用__new__,__init__这两个魔法方法来完成的,前者用来完成实例化后的对象的“骨架”(比如,解释器会为对象分配地址,并返回一个指向该对象的引用值,该引用值会被紧接着传递给__init__函数),后者用“ self.属性名 = 属性值 ”这...
分类:
编程语言 时间:
2014-12-29 15:15:47
阅读次数:
201
一、文件名函数、配置文件等其他类库文件之外的一般是以.php为后缀(第三方引入的不做要求); ThinkPHP的模板文件默认是以.html 为后缀(可以通过配置修改);二、其它命名其它命名规则举例其它函数小写字母和下划线get_client_ip以双下划线“__”打头的函数或方法作为魔法方法。例:_...
分类:
Web程序 时间:
2014-11-26 14:00:08
阅读次数:
177
这一章,有点抽象,看着有点蛋疼!大笑
双下划线__future__或单下划线有特殊含义,在Python中,这些名字的集合称为魔法方法:最重要的是__init__和一些处理访问对象的方法,这些方法允许你创建自己的序列或者是映射.
------
准备工作:
将__metaclass__=type放在模块的最开始位置,以确保类时最新式的。考虑下面两个类
class NewStyle(object):
more_code_here
class OldStyle:
more_code_here
如果...
分类:
编程语言 时间:
2014-09-27 00:02:58
阅读次数:
460