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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 进阶课程
    查看全部
    0 采集 收起 来源:课程介绍

    2017-01-19

  • 基础回顾2
    查看全部
    0 采集 收起 来源:课程介绍

    2017-01-19

  • 基础回顾1
    查看全部
    0 采集 收起 来源:课程介绍

    2017-01-19

  • __len__
    查看全部
    0 采集 收起 来源:python中 __len__

    2017-01-19

  • 计算平方根的方法有: 1. **0.5 2. math.sqrt
    查看全部
  • functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值),返回一个新的函数,调用这个新函数会更简单。比如int,需要传入x值和base,这里就可以用int2 = functools.partial(int, base=2) 把int函数的base固定为2,相当于设置了默认参数。 在习题中的,functools.partial(sorted,cmp=lambda s1,s2:cmp(s1.upper(),s2.upper())) 这个代码一步一步来看首先需要修改sorted函数,sorted是需要两个参数,sorted(list,cmp) 我们这里是需要对cmp给固定住,所以就是functools.partial(sorted,cmp=一个比较函数) 在这里使用匿名函数比较方便,匿名函数介绍可以看2-10,题目要求是忽略大小写的排序,所以可以采用先全部变为大写或者全部变为小写之后再比较,cmp比较函数是内置函数可以直接使用。 写法就是:lanmbda s1,s2:cmp(s1.upper(),s2.upper()) 所以最后代码为functools.partial(sorted,cmp=lambda s1,s2:cmp(s1.upper(),s2.upper()))
    查看全部
    0 采集 收起 来源:python中偏函数

    2017-01-19

  • 2-13 2-14 没看懂 ,先跳过,
    查看全部
  • python把函数作为参数 在2.1小节中,我们讲了高阶函数的概念,并编写了一个简单的高阶函数: def add(x, y, f): return f(x) + f(y) 如果传入abs作为参数f的值: add(-5, 9, abs) 根据函数的定义,函数执行的代码实际上是: abs(-5) + abs(9) 由于参数 x, y 和 f 都可以任意传入,如果 f 传入其他函数,就可以得到不同的返回值。 任务 利用add(x,y,f)函数,计算: ?不会了怎么办 计算平方根可以用函数: >>> math.sqrt(2) 1.4142... 参考代码: import math def add(x, y, f): return f(x) + f(y) print add(25, 9, math.sqrt)
    查看全部
  • 考察上一小节定义的 calc_sum 函数: def calc_sum(lst): def lazy_sum(): return sum(lst) return lazy_sum 注意: 发现没法把 lazy_sum 移到 calc_sum 的外部,因为它引用了 calc_sum 的参数 lst。 像这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure) 闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变
    查看全部
    0 采集 收起 来源:python中闭包

    2017-01-19

  • 返回函数完全看不懂。。。。需要重新复习
    查看全部
  • map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。 因此,我们只需要传入函数f(x)=x*x,就可以利用map()函数完成这个计算: def f(x): return x*x print map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]) 注意:map()函数不改变原有的 list,而是返回一个新的 list。 利用map()函数,可以把一个 list 转换为另一个 list,只需要传入转换函数。 由于list包含的元素可以是任何类型,因此,map() 不仅仅可以处理只包含数值的 list,事实上它可以处理包含任意类型的 list,只要传入的函数f可以处理这种数据类型。
    查看全部
  • 学了闭包才发现,上一节想的思路和写的代码为什么会和给出的答案不一样了!
    查看全部
    0 采集 收起 来源:python中闭包

    2017-01-19

  • magic 方法并不是直接调用的,而是使用函数的时候,函数会自动去调用相应的特殊方法。部分特殊方法需要编写相关的:__getattr__, setattr__, __delattr__
    查看全部
  • Mark
    查看全部
    0 采集 收起 来源:python中 __len__

    2017-01-19

  • 这里其实是添加了一个方法,而不是属性,只是按照属性的方式写的
    查看全部

举报

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

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