学习记录(5)11.29
昨天玩王者的时间有点多。检讨一下。今天多学习一会。
目前是廖雪峰和小甲鱼的同步在学习。同一块的内容两边都会看一下。
装饰器
一个点没理解。执行now()时会调用log(now)()。但是log()里面的now()又可以正常执行。
def log(func):
def wrapper(*args, **kw):
print(‘call %s():’ % func.name)
return func(*args, **kw)
return wrapper
@log
def now():
print(‘2015-3-25’)
由于log()是一个decorator,返回一个函数,所以,原来的now()函数仍然存在,只是现在同名的now变量指向了新的函数,于是调用now()将执行新函数,即在log()函数中返回的wrapper()函数。
字典1
d = {‘Michael’: 95, ‘Bob’: 75, ‘Tracy’: 85}
d[‘Jack’] = 90
d
{‘Michael’: 95, ‘Bob’: 75, ‘Tracy’: 85, ‘Jack’: 90}
由于一个key只能对应一个value,所以,多次对一个key放入value,后面的值会把前面的值冲掉
课后题
https://fishc.com.cn/forum.php?mod=viewthread&tid=45001&extra=page%3D1%26filter%3Dtypeid%26typeid%3D398
对应关系
d = {‘F’: 70, ‘C’: 67, ‘h’: 104, ‘i’: 105, ‘s’: 115}
d[‘C’]
67
不对。但也不知道哪不对
一样
(‘1000’,‘小甲鱼’,‘男’)
字典2
d.fromkeys()
创建并返回一个新的字典
keys()、values()、items()、get()
clear()、copy()、pop()、popitem()
setdefault()、update()
课后题
https://fishc.com.cn/forum.php?mod=viewthread&tid=45159&extra=page%3D1%26filter%3Dtypeid%26typeid%3D398
支持
新增一个key和value
字典更高效
没有
{1:‘数字’,2:‘数字’}
dict2 = dict1.copy()
集合
集合里的数据是唯一的,但不能索引。
add添加。remove移除。frozenset固定集合
课后题
可去除重复数据
frozenset
len()
报错。set不能索引
不一样
1和1.0视为一样的了
add和remove
文件1
open(file,mode=‘r’…) 打开文件并获取文件对象
mode= r(只读)、w(写入)、a(写入)、t(文本模式打开)。。。
close() 关闭文件
课后题
https://fishc.com.cn/forum.php?mod=viewthread&tid=45364&extra=page%3D1%26filter%3Dtypeid%26typeid%3D398
B
只读模式
创建二进制模式打开
防止断电等情况导致没保存上
list
for循环
读取10个字符返回
tell()
汉字占两个字节