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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • person 首字母一定要大写
    查看全部
  • 类的知识重点学习
    查看全部
  • 函数特点
    查看全部
  • 1. 比较函数的定义是,传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。
    查看全部
  • 1. filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。 2. 利用filter(),可以完成很多有用的功能,例如,删除 None 或者空字符串
    查看全部
  • 1. reduce()对list的每个元素反复调用函数f,并返回最终结果值。 2. reduce()还可以接收第3个可选参数,作为计算的初始值。如果把初始值设为100,计算: reduce(f, [1, 3, 5, 7, 9], 100)
    查看全部
  • 1. 利用map()函数,可以把一个 list 转换为另一个 list,只需要传入转换函数。 def f(x): return x*x print map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]) 2.map() 不仅仅可以处理只包含数值的 list,事实上它可以处理包含任意类型的 list,只要传入的函数f可以处理这种数据类型。
    查看全部
  • 能够接受函数作为参数的函数叫做高阶函数
    查看全部
  • 函数式编程方便测试,因为输入一个变量值是相同的。
    查看全部
  • 晚上在美团公众号上刚刚接触函数式编程
    查看全部
    0 采集 收起 来源:课程介绍

    2017-10-12

  • 一个类实例也可以变成一个可调用对象,只需要实现一个特殊方法__call__()。 我们把 Person 类变成一个可调用对象: class Person(object): def __init__(self, name, gender): self.name = name self.gender = gender def __call__(self, friend): print 'My name is %s...' % self.name print 'My friend is %s...' % friend 现在可以对 Person 实例直接调用: >>> p = Person('Bob', 'male') >>> p('Tim') My name is Bob... My friend is Tim...
    查看全部
    0 采集 收起 来源:python中 __call__

    2018-03-22

  • 由于Python是动态语言,任何实例在运行期都可以动态地添加属性。 如果要限制添加的属性,例如,Student类只允许添加 name、gender和score 这3个属性,就可以利用Python的一个特殊的__slots__来实现。 顾名思义,__slots__是指一个类允许的属性列表: class Student(object): __slots__ = ('name', 'gender', 'score') def __init__(self, name, gender, score): self.name = name self.gender = gender self.score = score
    查看全部
    0 采集 收起 来源:python中 __slots__

    2017-10-12

  • @property---这是关键字,固定格式,能让方法当“属性”用。 @score.setter---前面的"score"是@property紧跟的下面定义的那个方法的名字,"setter"是关键字,这种“@+方法名字+点+setter”是个固定格式与@property搭配使用。
    查看全部
    0 采集 收起 来源:python中 @property

    2018-03-22

  • def get_score(self): return self.__score def set_score(self, score): if score < 0 or score > 100: raise ValueError('invalid score') self.__score = score 这种使用 get/set 方法来封装对一个属性的访问在许多面向对象编程的语言中都很常见。可以用装饰器函数把 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装饰后的副产品。 >>> s = Student('Bob', 59) >>> s.score = 60 >>> print s.score 60 >>> s.score = 1000 Traceback (most recent call last): ... ValueError: invalid score
    查看全部
    0 采集 收起 来源:python中 @property

    2018-03-22

  • 辗转相除法求最大公约数: def gcd(a, b): if b == 0: return a return gcd(b, a % b)
    查看全部

举报

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

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