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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • # -*- coding: utf-8 -*- # 请给Person类的__init__方法中添加name和score参数, # 并把score绑定到__score属性上,看看外部是否能访问到。 class Person(object): def __init__(self, name, score): self.name=name self.__score=score p = Person('Bob', 59) print p.name print p.__score # 如果一个属性由双下划线开头(__),该属性就无法被外部访问。 # 如果一个属性以"__xxx__"的形式定义,那它又可以被外部访问了, # 以"__xxx__"定义的属性在Python的类中被称为特殊属性,
    查看全部
  • # -*- coding: utf-8 -*- # 请定义Person类的__init__方法,除了接受 name、gender 和 birth 外, # 还可接受任意关键字参数,并把他们都作为属性赋值给实例。 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) # 要定义关键字参数,使用 **kw; # 除了可以直接使用self.name = 'xxx'设置一个属性外,还可以通过 setattr(self, 'name', 'xxx') 设置属性。 xiaoming = Person('Xiao Ming', 'Male', '1990-1-1', job='Student') print xiaoming.name print xiaoming.job
    查看全部
  • map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。 注意:map()函数不改变原有的 list,而是返回一个新的 list。 利用map()函数,可以把一个 list 转换为另一个 list,只需要传入转换函数。 由于list包含的元素可以是任何类型,因此,map() 不仅仅可以处理只包含数值的 list,事实上它可以处理包含任意类型的 list,只要传入的函数f可以处理这种数据类型。
    查看全部
  • python学习方向
    查看全部
    0 采集 收起 来源:课程总结

    2017-08-21

  • math.sqrt
    查看全部
  • 看不太懂
    查看全部
  • lower() 降级为小写
    查看全部
  • 多态没看懂
    查看全部
    0 采集 收起 来源:python中多态

    2017-08-21

  • 一定要用super(Student,self).__init__(name,gender)去初始化父类,否则继承自Person的Student将没有name和gender
    查看全部
  • 1.面向对象编程:程序设计的范式,把程序当成不同对象的相互调用 2.基本思想:类与实例 类:class 定义抽象的数据类型 人 class person: 实例 :根据类的定义创建出来的 林明道 = person() 区分不同的类型和实体变量 3.数据封装 在类中封装每一个实例的属性,不同的实例有相同的数据类型,但是有不同的属性
    查看全部
  • 辗转相除法:设两数为a、b(a>b),求a和b最大公约数(a,b)的步骤如下:用a除以b(a≥b),得a÷b=q......r1(0≤r1)。若r1=0,则(a,b)=b;若r1≠0,则再用b除以r1,得b÷r1=q......r2 (0≤r2).若r2=0,则(a,b)=r1,若r2≠0,则继续用r1除以r2,……如此下去,直到能整除为止。其最后一个余数为0的除数即为(a, b)的最大公约数。 例如:a=25,b=15,a/b=1......10,b/10=1......5,10/5=2.......0,最后一个余数为0d的除数就是5, 5就是所求最大公约数。
    查看全部
  • return Rational(self.p * r.q + self.q * r.p, self.q * r.q) 这个题目是求有理数的加法,请你先百度一下什么是有理数,然后再往下看比较好。 本题有很多预设没有说清楚。 1.先创建两个Rational对象,每个对象有两个参数,第一个参数是分子,第二个参数是分母。 2.__add__方法需要传进来两个对象,第一个对象self和第二个对象r 3.self.p是第一个对象的第一个参数(也就是分子),self.q是第一个对象的第二个参数(也就是分母),以此类推r 4.self.p * r.q + self.q * r.p , self.q * r.q 说的就是就是分数,先通分再相加“,”前面是分子后面是分母 5.最后再显示输出成分数形式 分子 / 分母
    查看全部
  • 要让 @log 自适应任何参数定义的函数,可以利用Python的 *args 和 **kw,保证任意个数的参数总是能正常调用: def log(f): def fn(*args, **kw): print 'call ' + f.__name__ + '()...' return f(*args, **kw) return fn 现在,对于任意函数,@log 都能正常工作。
    查看全部
  • 返回函数不要引用任何循环变量,或者后续会发生变化的变量。要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。
    查看全部
    0 采集 收起 来源:python中闭包

    2017-08-20

  • prod()中不必再加lst,因为可以直接调用在calc_prod(lst)中的lst。 当prod()中加了lst后,在return部分就得增加输入lst的部分
    查看全部

举报

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

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