-
Python定义的一部分特殊方法查看全部
-
Python的特殊方法特点查看全部
-
如果给自己的类添加__str__()这个特殊方法,就可以按照自己的想法来打印Person对象 实际上相当于重载查看全部
-
多重继承的目的是从两种继承树中分别选择并继承出子类,以便组合功能使用。查看全部
-
魔术方法查看全部
-
由于Python的动态特性,json.load()并不一定要从一个File对象读取内容。任何对象,只要有read()方法,就称为File-like Object,都可以传给json.load()。查看全部
-
总是从某个类继承,默认为object class MyClass(object): pass 必须调用 super().__init__ def __init__(self, args): super(SubClass, self).__init__(args) pass查看全部
-
通过标记一个 @classmethod,该方法将绑定到 Person 类上,而非类的实例。类方法的第一个参数将传入类本身,通常将参数名命名为 cls,上面的 cls.count 实际上相当于 Person.count。查看全部
-
用 isinstance() 判断它是否是某种类型的实例外,还有以下常用方法来获取信息: type() 函数获取变量的类型,它返回一个 Type 对象 dir() 函数获取变量的所有属性,对于实例变量,dir()返回所有实例属性,包括`__class__`这类有特殊意义的属性,返回的属性是字符串列表 如何去掉`__xxx__`这类的特殊属性,只保留我们自己定义的属性?回顾一下filter()函数的用法 如果已知一个属性名称,要获取或者设置对象的属性,就需要用 getattr() 和 setattr( )函数 >>> getattr(s, 'name') # 获取name属性 'Bob' >>> setattr(s, 'name', 'Adam') # 设置新的name属性查看全部
-
Python对属性权限的控制是通过属性名来实现的,如果一个属性由双下划线开头(__),该属性就无法被外部访问 以单下划线开头的属性"_xxx"虽然也可以被外部访问,但是,按照习惯,他们不应该被外部访问。 如果一个属性以"__xxx__"的形式定义,那它又可以被外部访问了,以"__xxx__"定义的属性在Python的类中被称为特殊属性,有很多预定义的特殊属性可以使用,通常我们不要把普通属性用"__xxx__"定义。查看全部
-
除了从一个父类继承外,Python允许从多个父类继承,称为多重继承 继承链如下: A<--B<--D, A<--C<--D. 像这样,D 同时继承自 B 和 C,也就是 D 拥有了 A、B、C 的全部功能。多重继承通过 super()调用__init__()方法时,A 虽然被继承了两次,但__init__()只调用一次 __init__()方法的调用顺序是:沿继承链而上,从A的__init__()最先开始执行,接下来是B、C,最后是D的__init__()方法被调用 多重继承的目的是从两种继承树中分别选择并继承出子类,以便组合功能使用查看全部
-
print 'call %s() in %f %s'%(f.__name__,t,unit) print新方法查看全部
-
Python提供了open()函数来打开一个磁盘文件,并返回 File 对象。File对象有一个read()方法可以读取文件内容: 例如,从文件读取内容并解析为JSON结果: import json f = open('/path/to/file.json', 'r') print json.load(f) 由于Python的 动态特性, json.load()并不一定要从一个File对象读取内容。任何对象,只要有read()方法,就称为File-like Object,都可以传给json.load() 所谓File-like Object,也即它有read()方法查看全部
-
类具有继承关系,并且子类类型可以向上转型看做父类类型 动态语言和静态语言(例如Java)最大的差别之一。动态语言调用实例方法,不检查类型,只要方法存在,参数正确,就可以调用。查看全部
-
函数isinstance()可以判断一个变量的类型,既可以用在Python内置的数据类型如str、list、dict,也可以用在我们自定义的类,它们本质上都是数据类型 在继承链上,一个父类的实例不能是子类类型,因为子类比父类多了一些属性和方法 在一条继承链上,一个实例可以看成它本身的类型,也可以看成它父类的类型。查看全部
举报
0/150
提交
取消