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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 通俗说:如果x>y 则返回1,x<y返回-1

    查看全部
  • sorted():函数一般接收一个比较函数来实现自定义排序的

    (比较函数:如果x应该排在y前面,返回-1;如果相等返回0;如果x应该排在y后面,则返回1)

    它可以对list进行排序,从小到大:sorted([2,3,5,1,6])=[1,2,3,5,6]

    忽略大小写的排序:思想=可以全都转换成小写或者大写,然后再比较

    查看全部
  • mate.sqrt(x)返回的是浮点数,所以不能用isinstance判断

    查看全部
  • filter()函数:也是接受一个函数 f 和一个list。

    它的作用是对每个元素进行判断,自动过滤掉不符号条件的元素,返回由符合条件的元素组成的新list。

    利用filter()可以完成很过有用的功能,例如删除None或者空字符串

    举例:判断奇数的函数

    def f(x):

        return x%2==1

    filter(f,[1,2,3,4,5])=[1,3,5] 原理:依次取元素进入函数,判断是不是%2==1,如果是保留,不是过滤掉。

    s.strip()是去除前后空格,连同\n\t\r一并去除


    查看全部
  • reduce()函数:接收的参数和map类似,一个函数 f 和一个list,但行为不同,reduce要求传入给函数f的参数要两个,并且reduce对list的每个元素反复调用函数f,并最终返回结果。

    举例:def f(x,y):

        return x+y

    reduce(f,[1,2,3,4])先计算f(1,2)=3然后得到结果再执行f(3,4),以此类推到没有元素,返回结果。

    reduce():还可以接受第三个值,表示作为计算的起始值

    reduce(f,[1,2,3],100),从100开始计算。

    查看全部
  • map()函数:内置的高阶函数,接收一个函数f和一个list,遍历每一个list执行函数,返回得到一个新的list(也可以这样认为:通过函数f作用在list的每一个元素上,等到一个新list)

    1. 不改变原有的list,而是返回一个新list

    2. 利用map,可以把一个list转换成另外一个list,只需要传入转换函数

    3. list包含多种类型的元素,所以map也可以处理任意类型的list,只需要传入的函数可以处理这种数据类型就行


    查看全部
  • 计算平方根:计算类的算式是在math包中,所以必须先导入math包

    用math.sprt()方法,表示开根号

    查看全部
  • 高阶函数:接收一个函数做参数的函数

    变量可以指向函数,直接调用变量即可例如f=abs  f(-10)=10

    函数名其实就是指向函数的变量 abs=len abs([1,2,3])=3,abs已不再是求绝对值了。

    举例:def add(x,y,f):

        return f(x)+f(y)

    print add(-5,9,abs)→14

    查看全部
  • 12345

    查看全部
    0 采集 收起 来源:python中多态

    2018-08-13

  • 1、语法class Childen(Father1,Father2……)

    2、super().__init__()只调用一次

    查看全部
  • 通过标记一个 @classmethod,该方法将绑定到 Person 类上,而非类的实例。类方法的第一个参数将传入类本身,通常将参数名命名为 cls,上面的 cls.count 实际上相当于 Person.count。

    查看全部
  • sStudent类型,它实际上拥有自己的 whoAmI()方法以及从 Person继承的 whoAmI方法,但调用 s.whoAmI()总是先查找它自身的定义,如果没有定义,则顺着继承链向上查找,直到在某个父类中找到为止。

    class Person(object):
        def __init__(self,name,gender):
            self.name = name
            self.gender = gender
        def whoAmI(self):
            print('I am %s'%self.name,',I am a Person')
    class Teacher(Person):
        def __init__(self,name,gender,course):
            super(Teacher,self).__init__(name,gender)
            self.course = course
       #此时Teacher实例里面没有whoAmI方法
        #def whoAmI(self):
        #    print('I am %s'%self.name)
        
    t = Teacher('T','Male','English')
    #调用t中的whoAmI方法,自动顺着继承链找到父类Person的whoAmI方法
    t.whoAmI
    
    输出:
    I am T,I am a Person
    查看全部
    0 采集 收起 来源:python中多态

    2018-08-13

  • 这章节的教学没看懂,在敲代码中慢慢理解叭


    查看全部
    0 采集 收起 来源:python中多态

    2018-08-13

  • 1、判断一个子类来自哪个父类:用isinstance()方法。

    2、子类都是父类类型的(或是父类的父类……)。比如Student类继承自Person类,则Student类创建的实例s就是Person类型的。

    3、isinstance(instanceName,className)

    判断instanceName是不是className类型的,如果是则返回True,如果不是则返回False

    查看全部
  • 1、用class 子类名(父类名)来继承父类

    2、用super().__init__()来初始化父类已有的方法

    def __init__(self,args):
        super(SubClass,self).__init__(args)
        pass

    3、is关系:子类is父类【继承】

    4、has关系:作为类的属性出现【组合】

    class Student(Person)
        def __init__(self,bookName):
            self.book = Book(bookName)


    查看全部

举报

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

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