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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • def __str__(self): g = gcd(self.p, self.q) return '%s/%s' % (self.p / g, self.q / g) 另外还有些问题不懂,为什么在乘法和除法的运算中就只用简单的交换顺序就可以了 def __mul__(self, r): return Rational(self.p * r.p, self.q * r.q) def __div__(self, r): return Rational(self.p * r.q, self.q * r.p)
    查看全部
  • 小例子
    查看全部
  • lambda表示匿名函数,冒号前面的x表示函数的参数。只有一个表达式,没有return,返回表达式的结果。
    查看全部
  • 像这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。 闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。
    查看全部
    0 采集 收起 来源:python中闭包

    2016-10-22

  • reduce(f,list)一个高阶函数,和map(f,list)不一样的地方是:reduce传入的函数f必须接受两个参数,reduce对list的每隔元素反复调用f,并返回最终值。用于list的累加和累乘。还可以选取初始值,比如后面那一节的,累乘初始值1。即reduce(f,list,a0)
    查看全部
  • for n in range(num): L.append(a) a, b = b, a + b
    查看全部
    0 采集 收起 来源:python中 __len__

    2016-10-21

  • math.fimport math def is_sqr(x): return math.sqrt(x)%1==0 print filter(is_sqr, range(1, 101)) import math def is_sqr(x): num = math.sqrt(x) return math.floor(num) == num print filter(is_sqr, range(1, 101)) import math def is_sqr(x): v = math.sqrt(x) return int(v) == v print filter(is_sqr, range(1, 101))loor()返回函数的下属整数。
    查看全部
  • map()是一个高阶函数,能够以任何一个函数为变量,这个函数你可以自己预先定义他,实现各种功能。
    查看全部
  • def format_name(s): return s[0].upper()+s[1:].lower() print map(format_name, ['adam', 'LISA', 'barT'])
    查看全部
  • 1.变量可以指向函数; 2.函数名实际上就是一个指向函数的一个变量;函数名和普通的而变量没有区别; 3.高阶函数就是可以接受一个函数作为变量的函数。变量可以指向函数,函数的参数可以接收变量,一个函数可以接受另一个函数作为参数。
    查看全部
  • 这种行为称为多态。也就是说,方法调用将作用在 x 的实际类型上。s 是Student类型,它实际上拥有自己的 whoAmI()方法以及从 Person继承的 whoAmI方法,但调用 s.whoAmI()总是先查找它自身的定义,如果没有定义,则顺着继承链向上查找,直到在某个父类
    查看全部
    0 采集 收起 来源:python中多态

    2016-10-21

  • def who_am_i(x): print x.whoAmI() p = Person('Tim', 'Male') s = Student('Bob', 'Male', 88) t = Teacher('Alice', 'Female', 'English') who_am_i(p) who_am_i(s) who_am_i(t)
    查看全部
    0 采集 收起 来源:python中多态

    2016-10-21

  • int()把浮点数转换成整数
    查看全部
  • 自适应任何参数定义的函数,func(*args,**kw)
    查看全部
  • 改进一下前面定义的斐波那契数列: class Fib(object): ??? 请加一个__call__方法,让调用更简单: >>> f = Fib() >>> print f(10) [0, 1, 1, 2, 3, 5, 8, 13, 21, 34] 要正确定义参数:__call__(self, num) 参考代码: 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__

    2018-03-22

举报

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

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