为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
python进阶_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 如果要把一个类的实例变成 str,就需要实现特殊方法__str__():__str__()用于显示给用户,而__repr__()用于显示给开发人员。
    查看全部
  • for k, v in kw.iteritems(): setattr(self, k, v)
    查看全部
  • 首先可以用 type() 函数获取变量的类型,它返回一个 Type 对象:其次,可以用 dir() 函数获取变量的所有属性:对于实例变量,dir()返回所有实例属性,包括`__class__`这类有特殊意义的属性。dir()返回的属性是字符串列表,如果已知一个属性名称,要获取或者设置对象的属性,就需要用 getattr() 和 setattr( )函数了:
    查看全部
  • 多重继承通过 super()调用__init__()方法时,A 虽然被继承了两次,但__init__()只调用一次:
    查看全部
  • __slots__定义的属性仅对当前类起作用,对继承的子类是不起作用的。除非在子类中也定义__slots__,就像答案中一样,子类允许定义的属性就是自身的__slots__加上父类的__slots__。
    查看全部
    0 采集 收起 来源:python中 __slots__

    2016-07-17

  • @property---这是关键字,固定格式,能让方法当“属性”用。 @score.setter---前面的"score"是@property紧跟的下面定义的那个方法的名字,"setter"是关键字,这种“@+方法名字+点+setter”是个固定格式与@property搭配使用 这里注意到一个细节,就是把score定义成了私有属性__score,而我们根据前面的知识了解到私有属性在类外是不能够直接访问的,必须通过方法调用的方式,而装饰器函数又恰好把方法装饰成了属性调用,所以这里调用属性其实就是调用方法,返回的是私有属性
    查看全部
    0 采集 收起 来源:python中 @property

    2018-03-22

  • class Rational(object): def __init__(self, p, q): self.p = p self.q = q def __int__(self): return self.p // self.q def __float__(self): return float(self.p) / self.q 返回float时 需要先把一个数转换成float print float(Rational(7, 2)) print float(Rational(1, 3))
    查看全部
  • def gcd(a, b): if b == 0: return a return gcd(b, a % b) 球最大公约数
    查看全部
  • a,b = a,a+b 等价于 t = a a = b b = t+b python 有三头六臂
    查看全部
    0 采集 收起 来源:python中 __len__

    2016-07-17

  • 这题难就难在运用 __cmp__ 方法时对于返回的值是 1 还是 -1 的理解,还有同时运用 __cmp__ 方法比较name和score的
    查看全部
    0 采集 收起 来源:python中 __cmp__

    2016-07-17

  • 特殊方法: __str__ __repr__ __repr__ 可以简便写成: __repr__ = __str__
    查看全部
  • import functools def log(f): @functools.wraps(f) def wrapper(*args, **kw): print 'call...' return f(*args, **kw) return wrapper 返回的是一个wrapper函数,为什么里面的 print 'call'语句没有打印出来
    查看全部
  • 函数isinstance()可以判断一个变量的类型,既可以用在Python内置的数据类型如str、list、dict,也可以用在我们自定义的类,它们本质上都是数据类型。
    查看全部
  • 装饰器
    查看全部
  • **kw是关键字参数,用于字典 iteritems()用于字典kw的遍历 setattr(self, k, v)就等价于self.k = v 综上就是,遍历dict kw 中的属性,给每个属性设置了属性值
    查看全部

举报

0/150
提交
取消
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!