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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 这个reduce函数有一个点比较好用,比如可以用它来吧字符串串起来,例如这样 def f(x,y): return x+y print reduce(f,['Adam','Lisa','Bob']) 结果:AdamLisaBob reduce 可以导入两个数,其中第三个数通过函数规则 与第一个相连。
    查看全部
  • capitalize() 首字母大写,其余全部小写 upper() 全转换成大写 lower() 全转换成小写 title() 标题首字大写,如"i love python".title() "I love python"
    查看全部
  • 三种方法:1、s.capitalize() 2、s[0].upper s[1:].lower 3、s.title()
    查看全部
  • 1. p、q都是整数,表示有理数p/q 如果要让Rational进行加法运算,需要正确实现__add__ (备注:有理数就是指分数形式的数,它的定义是(p,q),输出为p/q,所以加法运算就是两个分数相加,可以看成p1/q1+p2/q2,通分之后就是(p1*q2+p2*q1)/(q1*q2),写成定义的形式就是(p1*q2+p2*q1,q1*q2)。再将p1,q1换为self.p和self.q,p2,q2换为r.p和r.q) 2. python中数学运算:__add__;__sub__;__mul__;__div__ 3. 求两个数的最大公约数:采用欧几里德算法 def gcd(a, b): if b == 0: return a return gcd(b, a % b) ...... def __str__(self): c=gcd(self.p,self.q) return '%s/%s' %(self.p/c, self.q/c)
    查看全部
  • 1. 要让 len() 函数工作正常,类必须提供一个特殊方法__len__(),它返回元素的个数。 2. 只要正确实现了__len__()方法,就可以用len()函数返回Students实例的“长度”:(实现计数功能)
    查看全部
    0 采集 收起 来源:python中 __len__

    2017-06-07

  • 1. 对一组 Student 类的实例排序时,就必须提供我们自己的特殊方法 __cmp__(): 2. ,__cmp__用实例自身self和传入的实例 s 进行比较,如果 self 应该排在前面,就返回 -1,如果 s 应该排在前面,就返回1,如果两者相当,返回 0。 3. 如果list不仅仅包含 Student 类,则 __cmp__ 可能会报错:可以使用filter()函数进行过滤
    查看全部
    0 采集 收起 来源:python中 __cmp__

    2017-06-07

  • 1. 类的实例变成 str,就需要实现特殊方法__str__(): class Person(object): def __init__(self, name, gender): self.name = name self.gender = gender def __str__(self): return '(Person: %s, %s)' % (self.name, self.gender)
    查看全部
  • <code> # 建议用这个: def gcd(a,b): while b: a,b=b,a%b return a # 递归的效率低 # 还有 def __str__(self): c = gcd(self.p, self.q) return '%s/%s' % (self.p/c, self.q/c) # 这样多次计算会导致p,q的值越来越大 # 这样: def __init__(self, p, q): self.p = p/gcd(p,q) self.q = q/gcd(p,q) # o(* ̄ ̄*)o </code>
    查看全部
  • class Fib(object): def __call_(self, num): a,b,L = 0,1,[] for n in range(num): L.append(a) a,b = b,a+b return L f = Fib() print f(10)
    查看全部
    0 采集 收起 来源:python中 __call__

    2017-06-07

  • 一定要用 super(Student, self).__init__(name, gender) 去初始化父类,否则,继承自 Person 的 Student 将没有 name 和 gender。函数super(Student, self)将返回当前类继承的父类,即 Person ,然后调用__init__()方法,注意self参数已在super()中传入,在__init__()中将隐式传递,不需要写出(也不能写)。
    查看全部
  • 在一条继承链上,一个实例可以看成是他本身的类型,也可以看成它父类的类型
    查看全部
  • PY中数学运算 PY中的四则运算不局限于int和float,还可以是有理数、矩阵等 1.用一个Rational类来表示有理数: class Rational(object): def __init__(self,p,q): self.p = p self.q = q p、q都是整数,表示有理数p/q 如果要让Rational进行加法运算,需要正确实现__add__ (备注:有理数就是指分数形式的数,它的定义是(p,q),输出为p/q,所以加法运算就是两个分数相加,可以看成p1/q1+p2/q2,通分之后就是(p1*q2+p2*q1)/(q1*q2),写成定义的形式就是(p1*q2+p2*q1,q1*q2)。再将p1,q1换为self.p和self.q,p2,q2换为r.p和r.q) class Rational(object): def __init__(self, p, q): self.p = p self.q = q def __add__(self, r): return Rational(self.p * r.q + self.q * r.p, self.q * r.q) def __str__(self): return '%s/%s' % (self.p, self.q) __repr__ = __str__
    查看全部
  • Python的继承: 格式:class 子类名(继承的父类名): 在子类的初始化定义中,一定要用super(子类名,self)来获取当前子类所继承的父类, 然后用super(子类名,self).__init__(父类属性1,父类属性2....)来继承父类中已有的属性. 在实例自己添加属性时会自动匹配到对应的属性上去
    查看全部
  • 独立与类之外定义的函数方法,如果需要在类的实例上进行调用,就需要使用types.MethodType()把函数变为实例的一个方法。
    查看全部
  • Python中定义实例方法: 实例的方法就是在类中定义的函数,它的第一个参数永远是 self,指向调用该方法的实例本身,其他参数和一个普通函数是完全一样的 注意:在实例方法内部,可以访问所有实例属性,这样,如果外部需要访问私有属性,可以通过方法调用获得,这种数据封装的形式除了能保护内部数据一致性外,还可以简化外部调用的难度
    查看全部

举报

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

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