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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 一个类实例也可以变成一个可调用对象,只需要实现一个特殊方法__call__()。

    在文章中,P('Tim')表示对类实例的调用,所以返回的结果是__call__()方法的结果。

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

    2018-04-22

  • 在继承父类时,先初始化所有的属性,再继承;父类的属性限制,并不影响子类添加属性;用__slots__可以限定类的属性

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

    2018-04-22

  • _slots__的目的是限制当前类所能拥有的属性,如果不需要添加任意动态的属性,使用__slots__也能节省内存。

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

    2018-04-22

  • 顾名思义,__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__

    2018-04-22

  • 定义类的属性使用@property,若要使属性属于可更改的状态,则可以定义相应属性的set/get方法,例如文中的@score.getter,若没有定义set/get方法,则属性的状态仅为可读属性

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

    2018-04-22

  • isinstance(object, classinfo)
    其中,object 是变量,classinfo 是类型即 (tuple,dict,int,float,list,bool等) 和 class类。

    若参数 object 是 classinfo 类的实例,或者 object 是 classinfo 类的子类的一个实例, 返回 True。
    若 object 不是一个给定类型的的对象, 则返回结果总是False。

    若 classinfo 不是一种数据类型或者由数据类型构成的元组,将引发一个 TypeError 异常。

    查看全部
  • isinstance(object, classinfo)
    其中,object 是变量,classinfo 是类型即 (tuple,dict,int,float,list,bool等) 和 class类


    若参数 object 是 classinfo 类的实例,或者 object 是 classinfo 类的子类的一个实例, 返回 True。
    若 object 不是一个给定类型的的对象, 则返回结果总是False。

    若 classinfo 不是一种数据类型或者由数据类型构成的元组,将引发一个 TypeError 异常。

    查看全部
  • JSON(JavaScript Object Notation):一种轻量级数据交换格式,相对于XML而言更简单,也易于阅读和编写,机器也方便解析和生成,Json是Python的Json模块序列化与反序列化的过程分别是 encoding和 decoding


    encoding:把一个Python对象编码转换成Json字符串
    decoding:把Json格式字符串解码转换成Python对象
    对于简单数据类型(string、unicode、int、float、list、tuple、dict),可以直接处理。


    json.dumps方法对简单数据类型encoding

    查看全部
  • filter() 接收的函数必须判断出一个数的平方根是否是整数,而 math.sqrt()返回结果是浮点数。

    查看全部
  • if self.p < self.q:

                k = self.p

            else:

                k = self.q

            for x in range(k, 0, -1):

                if self.p%x==0 and self.q%x == 0:

                    self.p = self.p / x

                    self.q = self.q / x

                    break

    这也是求最大公约数的一个方法。

    查看全部
  • def gcd(a,b):
        if a%b==0:
            return b
        else:
            return gcd(b,a%b)
    求最大公约数函数。


    查看全部
  • def gcd(a, b):
        if b == 0:
            return a
        return gcd(b, a % b)

    求最大公约数的函数,小除大取余循环法,当余数为零时,对应的除数就是两个数的最大公约数

    查看全部
  • 要表示有理数,可以用一个Rational类来表示:

    class Rational(object):
        def __init__(self, p, q):
            self.p = p
            self.q = q

    p、q 都是整数,表示有理数 p/q。

    有理数相当于一个分数。


    查看全部
  • __init__() should return None, not 'list'类的初始化应该返回none,也就是没有返回值,否则就会报错


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

    2018-04-21

  • a,b,L=0,1,[] or a,b=b,a+b这样的形式,可以依次对等号左边的变量进行赋值

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

    2018-04-21

举报

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

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