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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
  • reduce()函数也是Python内置的一个高阶函数。reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接收两个参数,reduce()对list的每个元素反复调用函数f,并返回最终结果值。 例如,编写一个f函数,接收x和y,返回x和y的和: def f(x, y): return x + y
    查看全部
  • filter()函数 filter()函数是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。 例如,要从一个list [1, 4, 6, 7, 9, 12, 17]中删除偶数,保留奇数,首先,要编写一个判断奇数的函数: def is_odd(x): return x % 2 == 1 然后,利用filter()过滤掉偶数: filter(is_odd, [1, 4, 6, 7, 9, 12, 17]) 结果:[1, 7, 9, 17]
    查看全部
  • def calc_prod(lst): def lazy_prod(): def f(x, y): return x * y return reduce(f, lst, 1) return lazy_prod f = calc_prod([1, 2, 3, 4]) print f()
    查看全部
  • class Person(object): #coding=utf-8 #中文显示 def __init__(self, name, score): self.__name=name self.__score=score def get_grade(self): scoreStr='' if self.__score>=90:scoreStr='A' elif self.__score>=60:scoreStr='B' elif self.__score<=60:scoreStr='C' return scoreStr p1 = Person('Bob', 90) p2 = Person('Alice', 65) p3 = Person('Tim', 48) print p1.get_grade() print p2.get_grade() print p3.get_grade()
    查看全部
  • class Person(object): def __init__(self, name, score): self.__name=name self.__score=score def get_grade(self): scoreStr='' if self.__score>=90: scoreStr='A' elif self.__score>=60: scoreStr='B' elif self.__score<=60: scoreStr='C' return scoreStr p1 = Person('Bob', 90) p2 = Person('Alice', 65) p3 = Person('Tim', 48) print p1.get_grade() print p2.get_grade() print p3.get_grade()
    查看全部
  • class Person(object): __count = 0 # _count = 0 def __init__(self, name): self.name=name Person.__count+=1 # Person._count+=1 p1 = Person('Bob') # print Person._count p2 = Person('Alice') print Person.__count # no !
    查看全部
  • 由于list包含的元素可以是任何类型,因此,map() 不仅仅可以处理只包含数值的 list,事实上它可以处理包含任意类型的 list,只要传入的函数f可以处理这种数据类型。
    查看全部
  • class Person(object): count=0; def __init__(self,name): Person.count+=1; self.name=name; p1 = Person('Bob'); print Person.count; p2 = Person('Alice'); print Person.count; p3 = Person('Tim'); print Person.count;
    查看全部
  • 允许有变量。函数也可以作为变量传入。有了闭包就能返回函数。有限度地支持匿名函数。
    查看全部
  • fly style!!!
    查看全部
    0 采集 收起 来源:课程介绍

    2015-03-29

  • #def calc_prod(lst): def product(x,y): return x * y print reduce(product,[1,2,3,4])
    查看全部
  • class Person(object): def __init__(self, name, score): self.name=name #self.__score__=score self.__score=score #self._score=score p = Person('Bob', 59) print p.name #print p.__score__ print p.__score #print p._score
    查看全部
  • class Person(object): def __init__(self,name,gender,birth,**kw): self.name=name self.gender=gender self.birth=birth for k,v in kw.iteritems(): setattr(self, k, v) xiaoming = Person('Xiao Ming', 'Male', '1990-1-1', job='Student') print xiaoming.name print xiaoming.job
    查看全部
  • 这是使用reduce函数进行运算
    查看全部
  • class Person(object): pass p1 = Person() p1.name = 'Bart' p2 = Person() p2.name = 'Adam' p3 = Person() p3.name = 'Lisa' L1 = [p1, p2, p3] L2 = sorted(L1,cmp = lambda x, y: cmp(x.name, y.name)) print L2[0].name print L2[1].name print L2[2].name
    查看全部

举报

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

微信扫码,参与3人拼团

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

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