廖雪峰笔记
zxm^
这个作者很懒,什么都没留下…
展开
-
python 类属性
廖雪峰 面向对象编程–实例属性和类属性 练习题为了统计学生人数,可以给Student类增加一个类属性,每创建一个实例,该属性自动增加:class Student(object): count = 0 def __init__(self, name): self.name = name Student.count+=1# 测试:if Student.count != 0: print('测试失败!')else: bart = St原创 2021-02-12 18:48:23 · 129 阅读 · 1 评论 -
python 装饰器
此文为个人总结的廖雪峰学习笔记,详细知识见廖雪峰。装饰器用途:要增强now()函数的功能,又不希望修改now()函数的定义,这种在代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator)本质上,装饰器是一个接受函数作为参数的返回函数。装饰器的常见定义方式(两种):①def decorator(func): def wrapper(*arg,**kw): print('call %s():' % func.__name__) return原创 2021-02-05 23:16:02 · 67 阅读 · 0 评论 -
python 生成器 generator 以及 next()函数
我们知道,如果一个函数定义中包含yield关键字,那么这个函数就是一个generator。如下面的gene()就是一个generator: def gene(): i=1 while True: yield i i+=1但是,如果想用next()函数不断获得这个generator的下一个返回值,不能直接next(gene()),必须先生成一个generator对象,再用next()函数。正确写法为: de原创 2021-02-03 20:30:51 · 1305 阅读 · 1 评论 -
字符串索引超出维度 IndexError: string index out of range
廖雪峰 python 切片 练习题:利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法:如下写法会报错:IndexError: string index out of rangedef trim(s): if s== '': return s else: while s[:1]== ' ': s= s[1:] while s[-1]== ' ':原创 2021-01-31 11:50:15 · 1965 阅读 · 0 评论 -
python 为什么要有关键字参数
python 为什么要有关键字参数摘自廖雪峰试想你正在做一个用户注册的功能,除了用户名和年龄是必填项外,其他都是可选项,利用关键字参数来定义这个函数就能满足注册的需求。def person(name, age, **kw): print('name:', name, 'age:', age, 'other:', kw)>>> person('Bob', 35, city='Beijing')name: Bob age: 35 other: {'city': 'Bei原创 2021-01-30 15:27:41 · 163 阅读 · 1 评论