Skip to content

Commit 80a5542

Browse files
committed
更新了11,12节
Former-commit-id: 2c8917b Former-commit-id: b509e3ac9d018702c361e244185ade7008c5204a [formerly b929d22e1d4eaecd520525927f9baebacc298b1f] [formerly 7392871f3133bf0b688174cc0bf047abf4dc941f [formerly 5b09c91ca43f9b32ca9f0f08c4db610b6c3475ab]] [formerly 97236e199a59ba7e0a46e62a430b6642bab0343f [formerly da7b20040baf7d5d381c1e840f707268661e044d] [formerly c97a67df1a0c323cb5dc3f80b364a247cc6d49b0 [formerly e2f3d3f2f1421c2e1ad95fd9df5a418c2f5d7427]]] [formerly 2dc671296627e75466dda0f1cdb5fe66f6d523dd [formerly 976ceceaa635caeaecbab4fc10d1f5e0f59f83f0] [formerly 79e85955eab370ed08fc0a7f58159b532ecbe7a2 [formerly dbecc4a23ccc28bc9b31fdf8536d4d4237c27c10]] [formerly 7747e0f016a3374a6d3ad21162353c04f4de5377 [formerly cb421a17ae59a4e5b949774f0bd8b41410a9d33e] [formerly be0bc7fee8be5447827bd3151d488a50cb0ebfbc [formerly 0adad83]]]] Former-commit-id: ce1512f0ce916b143b7a7ce10816dc549a79db64 [formerly 32f2d31cb971661e4db6af5a340cb6c542e42424] [formerly 8c62652ba7eafd309649dec67152c75460681627 [formerly 0cc9457d2d5aeef2d1b262d64c795434bee89f80]] [formerly b67dc9c5864110f01656bef02518987699f4cd3c [formerly eac5fead29e5ba76e12fd85c2dd45917f154fcc1] [formerly 5298ac928c225fd8bdb1c51d58b318cb3fa8fdf5 [formerly f3a0b81b47fb6959c4f97e216c748b100cb18d18]]] Former-commit-id: cce6e5a162e4b3cc72ddde7877aeb2ab97b60a10 [formerly 2ee8e5d446d382b3b38fb4ae92d8d9104ae4943c] [formerly 03b5dd63a0eb5a7f290f1564a4189b4c9df2d570 [formerly 233621a95e578e57c04d6e24de8e4fba3d6c1c7b]] Former-commit-id: c748415aef5db0e38664efad939c9af1f27e1c32 [formerly ec8a1e475e4a37bc2b15540956f53e84ae8b267d] Former-commit-id: f5ed1662bf08a4d3de23e1501e168c50e77f0882
1 parent 2780a09 commit 80a5542

8 files changed

+429
-5
lines changed

11. useful tools/11.07 logging.ipynb

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
{
2+
"cells": [
3+
{
4+
"cell_type": "markdown",
5+
"metadata": {},
6+
"source": [
7+
"# logging 模块:记录日志"
8+
]
9+
},
10+
{
11+
"cell_type": "markdown",
12+
"metadata": {},
13+
"source": [
14+
"`logging` 模块可以用来记录日志:"
15+
]
16+
},
17+
{
18+
"cell_type": "code",
19+
"execution_count": 1,
20+
"metadata": {
21+
"collapsed": true
22+
},
23+
"outputs": [],
24+
"source": [
25+
"import logging"
26+
]
27+
},
28+
{
29+
"cell_type": "markdown",
30+
"metadata": {},
31+
"source": [
32+
"`logging` 的日志类型有以下几种:\n",
33+
"\n",
34+
"- `logging.critical(msg)`\n",
35+
"- `logging.error(msg)`\n",
36+
"- `logging.warning(msg)`\n",
37+
"- `logging.info(msg)`\n",
38+
"- `logging.debug(msg)`\n",
39+
"\n",
40+
"级别排序为:`CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET`\n",
41+
"\n",
42+
"默认情况下,`logging` 的日志级别为 `WARNING`,只有不低于 `WARNING` 级别的日志才会显示在命令行。"
43+
]
44+
},
45+
{
46+
"cell_type": "code",
47+
"execution_count": 2,
48+
"metadata": {
49+
"collapsed": false
50+
},
51+
"outputs": [
52+
{
53+
"name": "stderr",
54+
"output_type": "stream",
55+
"text": [
56+
"CRITICAL:root:This is critical message\n",
57+
"ERROR:root:This is error message\n",
58+
"WARNING:root:This is warning message\n"
59+
]
60+
}
61+
],
62+
"source": [
63+
"logging.critical('This is critical message')\n",
64+
"logging.error('This is error message')\n",
65+
"logging.warning('This is warning message')\n",
66+
"\n",
67+
"# 不会显示\n",
68+
"logging.info('This is info message')\n",
69+
"logging.debug('This is debug message')"
70+
]
71+
},
72+
{
73+
"cell_type": "markdown",
74+
"metadata": {},
75+
"source": [
76+
"可以这样修改默认的日志级别:"
77+
]
78+
},
79+
{
80+
"cell_type": "code",
81+
"execution_count": 3,
82+
"metadata": {
83+
"collapsed": false
84+
},
85+
"outputs": [
86+
{
87+
"name": "stderr",
88+
"output_type": "stream",
89+
"text": [
90+
"INFO:root:This is info message\n"
91+
]
92+
}
93+
],
94+
"source": [
95+
"logging.root.setLevel(level=logging.INFO)\n",
96+
"\n",
97+
"logging.info('This is info message')"
98+
]
99+
},
100+
{
101+
"cell_type": "markdown",
102+
"metadata": {},
103+
"source": [
104+
"可以通过 `logging.basicConfig()` 函数来改变默认的日志显示方式:"
105+
]
106+
},
107+
{
108+
"cell_type": "code",
109+
"execution_count": 4,
110+
"metadata": {
111+
"collapsed": false
112+
},
113+
"outputs": [
114+
{
115+
"name": "stderr",
116+
"output_type": "stream",
117+
"text": [
118+
"CRITICAL:this program:This is critical message\n"
119+
]
120+
}
121+
],
122+
"source": [
123+
"logging.basicConfig(format='%(asctime)s: %(levelname)s: %(message)s')\n",
124+
"\n",
125+
"logger = logging.getLogger(\"this program\")\n",
126+
"\n",
127+
"logger.critical('This is critical message')"
128+
]
129+
}
130+
],
131+
"metadata": {
132+
"kernelspec": {
133+
"display_name": "Python 2",
134+
"language": "python",
135+
"name": "python2"
136+
},
137+
"language_info": {
138+
"codemirror_mode": {
139+
"name": "ipython",
140+
"version": 2
141+
},
142+
"file_extension": ".py",
143+
"mimetype": "text/x-python",
144+
"name": "python",
145+
"nbconvert_exporter": "python",
146+
"pygments_lexer": "ipython2",
147+
"version": "2.7.6"
148+
}
149+
},
150+
"nbformat": 4,
151+
"nbformat_minor": 0
152+
}

0 commit comments

Comments
 (0)