为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
  • 函数function 函数式是最贴近于计算(数学) 特点
    查看全部
  • 由于 f 可以被调用,所以,f 被称为可调用对象。 所有的函数都是可调用对象。 一个类实例也可以变成一个可调用对象,只需要实现一个特殊方法__call__()。
    查看全部
    0 采集 收起 来源:python中 __call__

    2016-07-17

  • __slots__是指一个类允许的属性列表__slots__的目的是限制当前类所能拥有的属性,如果不需要添加任意动态的属性,使用__slots__也能节省内存。
    查看全部
    0 采集 收起 来源:python中 __slots__

    2016-07-17

  • 因为Python支持高阶函数,在函数式编程中我们介绍了装饰器函数,可以用装饰器函数把 get/set 方法“装饰”成属性调用: class Student(object): def __init__(self, name, score): self.name = name self.__score = score @property def score(self): return self.__score @score.setter def score(self, score): if score < 0 or score > 100: raise ValueError('invalid score') self.__score = score 注意: 第一个score(self)是get方法,用@property装饰,第二个score(self, score)是set方法,用@score.setter装饰,@score.setter是前一个@property装饰后的副产品。
    查看全部
    0 采集 收起 来源:python中 @property

    2018-03-22

  • 要表示有理数,可以用一个Rational类来表示:如果要让Rational进行+运算,需要正确实现__add__:
    查看全部
  • def __init__(self, num): a,b,L = 0,1,[] for n in range(num): L.append(a) a,b = b,a+b self.numbers = L
    查看全部
    0 采集 收起 来源:python中 __len__

    2016-07-17

  • 如果要把一个类的实例变成 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

举报

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

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

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