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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • from A import B as C: 将A中的B命名为C
    查看全部
  • 包和普通目录的区别
    查看全部
  • 引用其他模块
    查看全部
  • int(x,base=N):把x(二进制)转换为十进制
    查看全部
    0 采集 收起 来源:python中偏函数

    2017-02-05

  • 要让int()函数正常工作,只需要实现特殊方法__int__(): class Rational(object): def __init__(self, p, q): self.p = p self.q = q def __int__(self): return self.p // self.q 结果如下: >>> print int(Rational(7, 2)) 3 >>> print int(Rational(1, 3)) 0 同理,要让float()函数正常工作,只需要实现特殊方法__float__()。 将self.p转型为float类型,再作除法就可以得到float: float(self.p) / self.q 参考代码: class Rational(object): def __init__(self, p, q): self.p = p self.q = q def __int__(self): return self.p // self.q def __float__(self): return float(self.p) / self.q print float(Rational(7, 2)) print float(Rational(1, 3))
    查看全部
  • def gcd(a, b): if b == 0: return a return gcd(b, a % b) class Rational(object): def __init__(self, p, q): self.p = p self.q = q def __add__(self, r): return Rational(self.p * r.q + self.q * r.p, self.q * r.q) def __sub__(self, r): return Rational(self.p*r.q-self.q*r.p,self.q * r.q) def __mul__(self, r): return Rational(self.p*r.p,self.q*r.q) def __div__(self, r): return Rational(self.p*r.q,self.q*r.p) def __str__(self): g=gcd(self.p,self.q) return ('%s/%s') % (self.p/g,self.q/g) __repr__ = __str__ r1 = Rational(1, 2) r2 = Rational(1, 4) print (r1 + r2) print (r1 - r2) print (r1 * r2) print (r1 / r2)
    查看全部
  • for k,v in kw.iteritems(): setattr(self,k,v) 接受任意关键字属性
    查看全部
  • class Student(object): def __init__(self, name, score): self.name = name self.score = score def __str__(self): return '(%s: %s)' % (self.name, self.score) __repr__ = __str__ def __cmp__(self, s): if False == isinstance(s, Student): return -1 return -cmp(self.score, s.score) or cmp(self.name, s.name) L = [Student('Tim', 99), Student('Bob', 88), Student('Alice', 99)] print sorted(L)
    查看全部
    0 采集 收起 来源:python中 __cmp__

    2017-02-04

  • 获取对象信息
    查看全部
  • class Person(object): def __init__(self, name, gender): self.name = name self.gender = gender def __str__(self): return '(Person: %s, %s)' % (self.name, self.gender) 现在,在交互式命令行下用 print 试试: >>> p = Person('Bob', 'male') >>> print p (Person: Bob, male) 但是,如果直接敲变量 p: >>> p <main.Person object at 0x10c941890> 似乎__str__() 不会被调用。 因为 Python 定义了__str__()和__repr__()两种方法,__str__()用于显示给用户,而__repr__()用于显示给开发人员。 有一个偷懒的定义__repr__的方法: class Person(object): def __init__(self, name, gender): self.name = name self.gender = gender def __str__(self): return '(Person: %s, %s)' % (self.name, self.gender) __repr__ = __str__
    查看全部
  • python的特殊方法: 1.特殊方法定义在class中 2.不需要直接调用 3.python的某些函数或操作符会调用对应的特殊方法 正确的实现特殊方法: 1.只编写用到的特殊方法 2.有关联的特殊方法都必须实现。
    查看全部
  • **kw是关键字参数,用于字典 iteritems()用于字典kw的遍历 setattr(self, k, v)就等价于self.k = v 综上就是,遍历dict kw 中的属性,给每个属性设置了属性值
    查看全部
  • 安装python 第三方管理模块
    查看全部
  • f(1)(2)
    查看全部
    0 采集 收起 来源:python中闭包

    2017-02-04

  • 可以使用 isinstance 判断类型:
    查看全部

举报

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

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