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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • return s.capitalize() #把list每个元素依次 传给map的函数而不是整个list
    查看全部
  • import math def add(x,y,f): return f(x)+f(y) print add(25,9,math.sqrt)
    查看全部
  • lambda使用如下:

    https://img1.sycdn.imooc.com//5bd5d0eb0001dd0811030398.jpg

    查看全部
    0 采集 收起 来源:python中闭包

    2018-10-28

  • math.sqrt()返回的是浮点数

    查看全部
  • 为什么用and而不用if

    filter(f,list),filter根据f返回值,也就是bool(true,false)筛选list重组,也就是保证f的返回值是一个bool而不是其他数据类型。

    查看全部
  • def add(x, y, f):
        return f(x) + f(y)
    add(-5, 9, abs)

    =

    abs(-5) + abs(9)


    查看全部
  • def __add__(self, r):

            return Rational(self.p * r.q + self.q * r.p, self.q * r.q)

    是分数运算的体现,p为分子,q为分母


    关于求最大公约数的函数:

    老师给的例子,不太好推,但一步步代入还是可以的:

    def gcd(a, b):
        if b == 0:
            return a
        return gcd(b, a % b)



    查看全部
  • class Fib(object):


        def __init__(self, num):

            fib = []

            if num == 1:

                fib.append(0)

            elif num == 2:

                fib.append(0)

                fib.append(1)

            else:

                fib.append(0)

                fib.append(1)

                i = 2

                while (num-2) > 0:

                    fib.append(fib[i-2]+fib[i-1])

                    i = i+1

                    num-=1

            #定义一个实例属性,使之指向生成的数列

            self.numbers = fib

            

        def __str__(self):

            return str(self.numbers)

        

        def __len__(self):

            return len(self.numbers)


    f = Fib(10)

    print f

    print len(f)


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

    2018-10-28

  • Python对属性权限的控制是通过属性名来实现的,如果一个属性由双下划线开头(__),该属性就无法被外部访问。看例子:

    class Person(object):
        def __init__(self, name):
            self.name = name
            self._title = 'Mr'
            self.__job = 'Student'


    查看全部
  • pass #空语句
    1. pass语句表示什么都不是做,常用来预留语句位置或临时未写等待以后完成。

    2. 定义最简单的类:

    class Person:
        pass

       3.在python中,没有继承其他类的类,会自动继承系统中内建的类object

    查看全部
  • 但 sorted()也是一个高阶函数,它可以接收一个比较函数来实现自定义排序,比较函数的定义是,传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。

    查看全部
  • 函数:函数是封装了一些独立的功能,可以直接调用,能将一些数据(参数)传递进去进行处理,然后返回一些数据(返回值),也可以没有返回值。可以直接在模块中进行定义使用。 所有传递给函数的数据都是显式传递的。

    方法:方法和函数类似,同样封装了独立的功能,但是方法是只能依靠类或者对象来调用的,表示针对性的操作。方法中的数据self和cls是隐式传递的,即方法的调用者;方法可以操作类内部的数据

    总结:简单的说,函数在python中独立存在,可直接使用的,而方法是必须被别人调用才能实现的。静态方法除外(与类和对象均无关,通过类名和对象名均可被调用,属函数)


    题目中  p1.get_grade  没有加括号,即不是调用,加了括号就变成了通过对象调用(并且为get_grade()赋值了),就成了方法

    注:绑定(调用)不是指" . "这个符号,这个符号说实在的只有域名的作用。绑定在这里是指,会默认赋值该绑定的对象。

    查看全部
  • 要输出中文就要加编码

    # -*- coding: utf-8 -*-

    如果不加,会报错

    SyntaxError: Non-ASCII character '\xe4'
    查看全部
  • 要在Python 2.7中引入3.x的除法规则,导入__future__division

    >>> from __future__ import division


    查看全部
  • 注意到os.path模块可以以若干种方式导入:

    import os
    import os.path
    from os import path
    from os.path import isdir, isfile


    查看全部

举报

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

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