File tree Expand file tree Collapse file tree 2 files changed +150
-5
lines changed Expand file tree Collapse file tree 2 files changed +150
-5
lines changed Original file line number Diff line number Diff line change 2
2
3
3
学习的进度如下所示:
4
4
5
- + [ ] x
6
- - [ ] c
7
- - [ ] d
8
-
9
-
5
+ + [ ] Python教程
6
+ + [x] Python简介
7
+ + [x] 安装Python
8
+ + [x] Python解释器
9
+ + [x] 第一个Python程序
10
+ + [x] 使用文本编辑器
11
+ + [x] Python代码运行助手
12
+ + [x] 输入和输出
13
+ + [x] Python基础
14
+ + [x] 数据类型和变量
15
+ + [x] 字符串和编码
16
+ + [x] 使用list和tuple
17
+ + [x] 条件判断
18
+ + [x] 循环
19
+ + [x] 使用dict和set
20
+ + [x] 函数
21
+ + [x] 调用函数
22
+ + [x] 定义函数
23
+ + [x] 函数的参数
24
+ + [x] 递归函数
25
+ + [x] 高级特性
26
+ + [x] 切片
27
+ + [x] 迭代
28
+ + [x] 列表生成式
29
+ + [x] 生成器
30
+ + [x] 迭代器
31
+ + [x] 函数式编程
32
+ + [x] 高阶函数
33
+ + [ x] map/reduce
34
+ + [ x] filter
35
+ + [ x] sorted
36
+ + [x] 返回函数
37
+ + [x] 匿名函数
38
+ + [x] 装饰器
39
+ + [ ] 偏函数
40
+ + [ ] 模块
41
+ + [ ] 使用模块
42
+ + [ ] 安装第三方模块
43
+ + [ ] 面向对象编程
44
+ + [ ] 类和实例
45
+ + [ ] 访问限制
46
+ + [ ] 继承和多态
47
+ + [ ] 获取对象信息
48
+ + [ ] 实例属性和类属性
49
+ + [ ] 面向对象高级编程
50
+ + [ ] 使用__ slots__
51
+ + [ ] 使用@property
52
+ + [ ] 多重继承
53
+ + [ ] 定制类
54
+ + [ ] 使用枚举类
55
+ + [ ] 使用元类
56
+ + [ ] 错误、调试和测试
57
+ + [ ] 错误处理
58
+ + [ ] 调试
59
+ + [ ] 单元测试
60
+ + [ ] 文档测试
61
+ + [ ] IO编程
62
+ + [ ] 文件读写
63
+ + [ ] StringIO和BytesIO
64
+ + [ ] 操作文件和目录
65
+ + [ ] 序列化
66
+ + [ ] 进程和线程
67
+ + [ ] 多进程
68
+ + [ ] 多线程
69
+ + [ ] ThreadLocal
70
+ + [ ] 进程 vs. 线程
71
+ + [ ] 分布式进程
72
+ + [ ] 正则表达式
73
+ + [ ] 常用内建模块
74
+ + [ ] datetime
75
+ + [ ] collections
76
+ + [ ] base64
77
+ + [ ] struct
78
+ + [ ] hashlib
79
+ + [ ] itertools
80
+ + [ ] contextlib
81
+ + [ ] XML
82
+ + [ ] HTMLParser
83
+ + [ ] urllib
84
+ + [ ] 常用第三方模块
85
+ + [ ] PIL
86
+ + [ ] virtualenv
87
+ + [ ] 图形界面
88
+ + [ ] 网络编程
89
+ + [ ] TCP/IP简介
90
+ + [ ] TCP编程
91
+ + [ ] UDP编程
92
+ + [ ] 电子邮件
93
+ + [ ] SMTP发送邮件
94
+ + [ ] POP3收取邮件
95
+ + [ ] 访问数据库
96
+ + [ ] 使用SQLite
97
+ + [ ] 使用MySQL
98
+ + [ ] 使用SQLAlchemy
99
+ + [ ] Web开发
100
+ + [ ] HTTP协议简介
101
+ + [ ] HTML简介
102
+ + [ ] WSGI接口
103
+ + [ ] 使用Web框架
104
+ + [ ] 使用模板
105
+ + [ ] 异步IO
106
+ + [ ] 协程
107
+ + [ ] asyncio
108
+ + [ ] async/await
109
+ + [ ] aiohttp
110
+ + [ ] 实战
111
+ + [ ] Day 1 - 搭建开发环境
112
+ + [ ] Day 2 - 编写Web App骨架
113
+ + [ ] Day 3 - 编写ORM
114
+ + [ ] Day 4 - 编写Model
115
+ + [ ] Day 5 - 编写Web框架
116
+ + [ ] Day 6 - 编写配置文件
117
+ + [ ] Day 7 - 编写MVC
118
+ + [ ] Day 8 - 构建前端
119
+ + [ ] Day 9 - 编写API
120
+ + [ ] Day 10 - 用户注册和登录
121
+ + [ ] Day 11 - 编写日志创建页
122
+ + [ ] Day 12 - 编写日志列表页
123
+ + [ ] Day 13 - 提升开发效率
124
+ + [ ] Day 14 - 完成Web App
125
+ + [ ] Day 15 - 部署Web App
126
+ + [ ] Day 16 - 编写移动App
127
+ + [ ] FAQ
128
+ + [ ] 期末总结
10
129
11
130
12
131
下面是学习的过程中遇到的一些问题,以及解决方案。
Original file line number Diff line number Diff line change @@ -82,7 +82,33 @@ def sum4():
82
82
sum4 ()
83
83
print (sum4 .__name__ )
84
84
85
+ print ('------ divider ------' )
85
86
87
+ from functools import wraps
86
88
89
+ def logX (arg ):
90
+ if callable (arg ):
91
+ func = arg
92
+ def wrapper (* args , ** kw ):
93
+ print ('before' )
94
+ func (* args , ** kw )
95
+ return wrapper
96
+ else :
97
+ def decorator (func ):
98
+ def wrapper (* args , ** kw ):
99
+ print (arg )
100
+ print ('before' )
101
+ func (* args , ** kw )
102
+ return wrapper
103
+ return decorator
104
+
105
+ @logX
106
+ def sum7 ():
107
+ pass
87
108
109
+ @logX (123 )
110
+ def sum8 ():
111
+ pass
88
112
113
+ sum7 ()
114
+ sum8 ()
You can’t perform that action at this time.
0 commit comments