From 207cf5f28aa10d4dfbf21ca39292165725848b2b Mon Sep 17 00:00:00 2001 From: luxin Date: Mon, 27 Dec 2021 18:22:54 +0800 Subject: [PATCH] add keywords_must and keywords_forbid --- .../config.json" | 20 +- .../config.json" | 8 +- .../config.json" | 26 +- .../config.json" | 14 +- .../config.json" | 78 +- .../config.json" | 6 +- .../config.json" | 8 +- .../config.json" | 4 +- .../config.json" | 8 +- .../config.json" | 56 +- .../config.json" | 244 +- .../3.\345\207\275\346\225\260/config.json" | 906 +-- .../4.\347\261\273/config.json" | 588 +- .../config.json" | 9 +- .../config.json" | 96 +- .../7.\345\276\252\347\216\257/config.json" | 40 +- .../config.json" | 136 +- .../config.json" | 252 +- .../config.json" | 4 +- .../config.json" | 6 +- .../config.json" | 8 +- .../config.json" | 66 +- .../3.\346\226\255\350\250\200/config.json" | 4 +- .../4.with-as/config.json" | 4 +- .../config.json" | 12 +- .../config.json" | 48 +- .../config.json" | 48 +- .../8.\346\226\207\344\273\266/config.json" | 60 +- .../config.json" | 48 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 28 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 12 +- .../config.json" | 8 +- .../config.json" | 64 +- .../config.json" | 8 +- .../config.json" | 8 +- .../config.json" | 55 +- .../config.json" | 8 +- .../config.json" | 4 +- .../config.json" | 20 +- .../2. Django/config.json" | 178 +- .../3. Tornado/config.json" | 42 +- .../4. Flask/config.json" | 406 +- .../config.json" | 4 +- .../1.urllib/config.json" | 18 +- .../config.json" | 20 +- .../config.json" | 16 +- .../config.json" | 68 +- .../3.Beautiful Soup/config.json" | 24 +- .../4.lxml/config.json" | 30 +- .../5.requests/config.json" | 50 +- .../6.Selenium/config.json" | 60 +- .../config.json" | 86 +- .../config.json" | 20 +- .../config.json" | 12 +- .../config.json" | 4 +- .../1.Tkinter/config.json" | 31 +- .../2.PyQT/config.json" | 42 +- .../3.WxPython/config.json" | 43 +- .../config.json" | 4 +- .../config.json" | 4 +- .../config.json" | 27 +- .../config.json" | 7 +- .../config.json" | 7 +- .../config.json" | 43 +- .../config.json" | 35 +- .../config.json" | 15 +- .../config.json" | 19 +- .../config.json" | 23 +- .../config.json" | 4 +- .../config.json" | 15 +- .../config.json" | 19 +- .../config.json" | 31 +- .../config.json" | 39 +- .../config.json" | 4 +- .../config.json" | 7 +- .../config.json" | 27 +- .../config.json" | 35 +- .../config.json" | 43 +- .../config.json" | 4 +- .../config.json" | 6 +- .../10.\350\201\232\347\261\273/config.json" | 12 +- .../config.json" | 12 +- .../config.json" | 6 +- .../config.json" | 18 +- .../config.json" | 18 +- .../config.json" | 18 +- .../config.json" | 22 +- .../7.\347\247\257\345\210\206/config.json" | 16 +- .../config.json" | 12 +- .../config.json" | 24 +- .../config.json" | 4 +- .../config.json" | 54 +- .../config.json" | 54 +- .../config.json" | 84 +- .../config.json" | 4 +- .../config.json" | 204 +- .../config.json" | 288 +- .../config.json" | 788 ++- .../config.json" | 456 +- .../config.json" | 70 +- .../config.json" | 40 +- .../config.json" | 4 +- .../1.\345\207\275\346\225\260/config.json" | 104 +- .../2.\347\261\273/config.json" | 128 +- .../config.json" | 28 +- .../config.json" | 7 +- .../config.json" | 8 +- .../config.json" | 4 +- .../config.json" | 6 +- .../config.json" | 4 +- .../config.json" | 4 +- data/config.json | 8 +- data/tree.json | 6027 +++++++++++++---- src/tree.py | 82 +- 124 files changed, 9721 insertions(+), 3531 deletions(-) diff --git "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/1.Python\347\256\200\344\273\213/config.json" "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/1.Python\347\256\200\344\273\213/config.json" index a7d3ecb..c312621 100644 --- "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/1.Python\347\256\200\344\273\213/config.json" +++ "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/1.Python\347\256\200\344\273\213/config.json" @@ -2,29 +2,39 @@ "export": [ "helloworld.json" ], - "keywords": [], + "keywords": ["Python简介"], "children": [ { "Python都能做什么": { "keywords": [], "children": [], - "node_id": "python-4-0" + "node_id": "python-4-0", + "keywords_must": [], + "keywords_forbid": [] } }, { "python起源和发展": { "keywords": [], "children": [], - "node_id": "python-insert-2" + "node_id": "python-insert-2", + "keywords_must": [], + "keywords_forbid": [] } }, { "python语言特点": { "keywords": [], "children": [], - "node_id": "python-insert-3" + "node_id": "python-insert-3", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-0" + "node_id": "python-3-0", + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/2.\347\250\213\345\272\217\350\256\276\350\256\241\346\200\235\346\203\263/config.json" "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/2.\347\250\213\345\272\217\350\256\276\350\256\241\346\200\235\346\203\263/config.json" index d3c4906..637bbee 100644 --- "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/2.\347\250\213\345\272\217\350\256\276\350\256\241\346\200\235\346\203\263/config.json" +++ "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/2.\347\250\213\345\272\217\350\256\276\350\256\241\346\200\235\346\203\263/config.json" @@ -4,7 +4,11 @@ "function.json", "class.json" ], - "keywords": [], + "keywords": ["程序设计思想"], "children": [], - "node_id": "python-3-1" + "node_id": "python-3-1", + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/3.\345\256\211\350\243\205Python/config.json" "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/3.\345\256\211\350\243\205Python/config.json" index 06603a2..ef6fe74 100644 --- "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/3.\345\256\211\350\243\205Python/config.json" +++ "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/3.\345\256\211\350\243\205Python/config.json" @@ -2,29 +2,39 @@ "export": [ "install.json" ], - "keywords": [], + "keywords": ["安装"], "children": [ { "Windows安装Python": { - "keywords": [], + "keywords": ["Windows"], "children": [], - "node_id": "python-4-1" + "node_id": "python-4-1", + "keywords_must": [], + "keywords_forbid": [] } }, { "Linux安装Python": { - "keywords": [], + "keywords": ["Linux"], "children": [], - "node_id": "python-4-2" + "node_id": "python-4-2", + "keywords_must": [], + "keywords_forbid": [] } }, { "MacOS安装Python": { - "keywords": [], + "keywords": ["MacOS"], "children": [], - "node_id": "python-4-3" + "node_id": "python-4-3", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-2" + "node_id": "python-3-2", + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/4.\350\277\220\350\241\214\346\226\271\345\274\217/config.json" "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/4.\350\277\220\350\241\214\346\226\271\345\274\217/config.json" index dbab073..722a38f 100644 --- "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/4.\350\277\220\350\241\214\346\226\271\345\274\217/config.json" +++ "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/4.\350\277\220\350\241\214\346\226\271\345\274\217/config.json" @@ -8,16 +8,24 @@ "以交互方式运行": { "keywords": [], "children": [], - "node_id": "python-4-4" + "node_id": "python-4-4", + "keywords_must": [], + "keywords_forbid": [] } }, { "以脚本方式运行": { "keywords": [], "children": [], - "node_id": "python-4-5" + "node_id": "python-4-5", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-3" + "node_id": "python-3-3", + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/5.\345\270\270\347\224\250\345\274\200\345\217\221\345\267\245\345\205\267/config.json" "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/5.\345\270\270\347\224\250\345\274\200\345\217\221\345\267\245\345\205\267/config.json" index fedb349..ea309c3 100644 --- "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/5.\345\270\270\347\224\250\345\274\200\345\217\221\345\267\245\345\205\267/config.json" +++ "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/5.\345\270\270\347\224\250\345\274\200\345\217\221\345\267\245\345\205\267/config.json" @@ -8,128 +8,168 @@ "typing --- 类型提示支持": { "keywords": [], "children": [], - "node_id": "python-4-6" + "node_id": "python-4-6", + "keywords_must": [], + "keywords_forbid": [] } }, { "pydoc --- 文档生成器和在线帮助系统": { "keywords": [], "children": [], - "node_id": "python-4-7" + "node_id": "python-4-7", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python Development Mode": { "keywords": [], "children": [], - "node_id": "python-4-8" + "node_id": "python-4-8", + "keywords_must": [], + "keywords_forbid": [] } }, { "Effects of the Python Development Mode": { "keywords": [], "children": [], - "node_id": "python-4-9" + "node_id": "python-4-9", + "keywords_must": [], + "keywords_forbid": [] } }, { "ResourceWarning Example": { "keywords": [], "children": [], - "node_id": "python-4-10" + "node_id": "python-4-10", + "keywords_must": [], + "keywords_forbid": [] } }, { "Bad file descriptor error example": { "keywords": [], "children": [], - "node_id": "python-4-11" + "node_id": "python-4-11", + "keywords_must": [], + "keywords_forbid": [] } }, { "doctest --- 测试交互性的Python示例": { "keywords": [], "children": [], - "node_id": "python-4-12" + "node_id": "python-4-12", + "keywords_must": [], + "keywords_forbid": [] } }, { "unittest --- 单元测试框架": { "keywords": [], "children": [], - "node_id": "python-4-13" + "node_id": "python-4-13", + "keywords_must": [], + "keywords_forbid": [] } }, { "unittest.mock --- mock对象库": { "keywords": [], "children": [], - "node_id": "python-4-14" + "node_id": "python-4-14", + "keywords_must": [], + "keywords_forbid": [] } }, { "unittest.mock上手指南": { "keywords": [], "children": [], - "node_id": "python-4-15" + "node_id": "python-4-15", + "keywords_must": [], + "keywords_forbid": [] } }, { "2to3 - 自动将Python 2 代码转为Python 3 代码": { "keywords": [], "children": [], - "node_id": "python-4-16" + "node_id": "python-4-16", + "keywords_must": [], + "keywords_forbid": [] } }, { "test --- Python回归测试包": { "keywords": [], "children": [], - "node_id": "python-4-17" + "node_id": "python-4-17", + "keywords_must": [], + "keywords_forbid": [] } }, { "test.support --- Utilities for the Python test suite": { "keywords": [], "children": [], - "node_id": "python-4-18" + "node_id": "python-4-18", + "keywords_must": [], + "keywords_forbid": [] } }, { "test.support.socket_helper --- Utilities for socket tests": { "keywords": [], "children": [], - "node_id": "python-4-19" + "node_id": "python-4-19", + "keywords_must": [], + "keywords_forbid": [] } }, { "test.support.script_helper --- Utilities for the Python execution tests": { "keywords": [], "children": [], - "node_id": "python-4-20" + "node_id": "python-4-20", + "keywords_must": [], + "keywords_forbid": [] } }, { "test.support.bytecode_helper --- Support tools for testing correct bytecode generation": { "keywords": [], "children": [], - "node_id": "python-4-21" + "node_id": "python-4-21", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用PyCharm开发Python": { "keywords": [], "children": [], - "node_id": "python-insert-0" + "node_id": "python-insert-0", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用VSCode开发Python": { "keywords": [], "children": [], - "node_id": "python-insert-1" + "node_id": "python-insert-1", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-4" + "node_id": "python-3-4", + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/6.\347\274\226\347\240\201\350\247\204\350\214\203/config.json" "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/6.\347\274\226\347\240\201\350\247\204\350\214\203/config.json" index b1db85e..b8426c6 100644 --- "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/6.\347\274\226\347\240\201\350\247\204\350\214\203/config.json" +++ "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/6.\347\274\226\347\240\201\350\247\204\350\214\203/config.json" @@ -4,5 +4,9 @@ ], "keywords": [], "children": [], - "node_id": "python-3-5" + "node_id": "python-3-5", + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/7.\346\250\241\345\235\227\347\256\241\347\220\206/config.json" "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/7.\346\250\241\345\235\227\347\256\241\347\220\206/config.json" index 74b97af..3dcc646 100644 --- "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/7.\346\250\241\345\235\227\347\256\241\347\220\206/config.json" +++ "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/7.\346\250\241\345\235\227\347\256\241\347\220\206/config.json" @@ -10,9 +10,13 @@ "pip": { "keywords": [], "children": [], - "node_id": "python-4-22" + "node_id": "python-4-22", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-6" + "node_id": "python-3-6", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/config.json" "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/config.json" index 11e1787..f1d4e8a 100644 --- "a/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/config.json" +++ "b/data/1.python\345\210\235\351\230\266/1.\351\242\204\345\244\207\347\237\245\350\257\206/config.json" @@ -1,4 +1,6 @@ { "keywords": [], - "node_id": "python-2-0" + "node_id": "python-2-0", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/1.\347\274\251\350\277\233\350\247\204\345\210\231/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/1.\347\274\251\350\277\233\350\247\204\345\210\231/config.json" index f57b517..55a1f19 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/1.\347\274\251\350\277\233\350\247\204\345\210\231/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/1.\347\274\251\350\277\233\350\247\204\345\210\231/config.json" @@ -8,9 +8,13 @@ "建议使用4个空格": { "keywords": [], "children": [], - "node_id": "python-4-23" + "node_id": "python-4-23", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-7" + "node_id": "python-3-7", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/10.\345\270\270\347\224\250\345\206\205\347\275\256\345\207\275\346\225\260/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/10.\345\270\270\347\224\250\345\206\205\347\275\256\345\207\275\346\225\260/config.json" index 64a3dd4..34660ca 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/10.\345\270\270\347\224\250\345\206\205\347\275\256\345\207\275\346\225\260/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/10.\345\270\270\347\224\250\345\206\205\347\275\256\345\207\275\346\225\260/config.json" @@ -10,93 +10,121 @@ "help": { "keywords": [], "children": [], - "node_id": "python-4-143" + "node_id": "python-4-143", + "keywords_must": [], + "keywords_forbid": [] } }, { "input": { "keywords": [], "children": [], - "node_id": "python-4-144" + "node_id": "python-4-144", + "keywords_must": [], + "keywords_forbid": [] } }, { "print": { "keywords": [], "children": [], - "node_id": "python-4-145" + "node_id": "python-4-145", + "keywords_must": [], + "keywords_forbid": [] } }, { "range": { "keywords": [], "children": [], - "node_id": "python-4-146" + "node_id": "python-4-146", + "keywords_must": [], + "keywords_forbid": [] } }, { "format": { "keywords": [], "children": [], - "node_id": "python-4-147" + "node_id": "python-4-147", + "keywords_must": [], + "keywords_forbid": [] } }, { "len": { "keywords": [], "children": [], - "node_id": "python-4-148" + "node_id": "python-4-148", + "keywords_must": [], + "keywords_forbid": [] } }, { "sorted": { "keywords": [], "children": [], - "node_id": "python-4-149" + "node_id": "python-4-149", + "keywords_must": [], + "keywords_forbid": [] } }, { "open": { "keywords": [], "children": [], - "node_id": "python-4-150" + "node_id": "python-4-150", + "keywords_must": [], + "keywords_forbid": [] } }, { "dir": { "keywords": [], "children": [], - "node_id": "python-4-151" + "node_id": "python-4-151", + "keywords_must": [], + "keywords_forbid": [] } }, { "enumerate/zip": { "keywords": [], "children": [], - "node_id": "python-4-152" + "node_id": "python-4-152", + "keywords_must": [], + "keywords_forbid": [] } }, { "type/isinstance": { "keywords": [], "children": [], - "node_id": "python-4-153" + "node_id": "python-4-153", + "keywords_must": [], + "keywords_forbid": [] } }, { "min/max/sum": { "keywords": [], "children": [], - "node_id": "python-4-154" + "node_id": "python-4-154", + "keywords_must": [], + "keywords_forbid": [] } }, { "abs/round/pow/divmod": { "keywords": [], "children": [], - "node_id": "python-4-155" + "node_id": "python-4-155", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-16" + "node_id": "python-3-16", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/2.\345\237\272\347\241\200\347\237\245\350\257\206/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/2.\345\237\272\347\241\200\347\237\245\350\257\206/config.json" index 9106054..8c6ac93 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/2.\345\237\272\347\241\200\347\237\245\350\257\206/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/2.\345\237\272\347\241\200\347\237\245\350\257\206/config.json" @@ -10,25 +10,33 @@ "迭代": { "keywords": [], "children": [], - "node_id": "python-5-1358" + "node_id": "python-5-1358", + "keywords_must": [], + "keywords_forbid": [] } }, { "缓存": { "keywords": [], "children": [], - "node_id": "python-5-1359" + "node_id": "python-5-1359", + "keywords_must": [], + "keywords_forbid": [] } }, { "透明度": { "keywords": [], "children": [], - "node_id": "python-5-1360" + "node_id": "python-5-1360", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1423" + "node_id": "python-4-1423", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -39,53 +47,69 @@ "捕获异常": { "keywords": [], "children": [], - "node_id": "python-5-1361" + "node_id": "python-5-1361", + "keywords_must": [], + "keywords_forbid": [] } }, { "异常链": { "keywords": [], "children": [], - "node_id": "python-5-1362" + "node_id": "python-5-1362", + "keywords_must": [], + "keywords_forbid": [] } }, { "当一切顺利的时候": { "keywords": [], "children": [], - "node_id": "python-5-1363" + "node_id": "python-5-1363", + "keywords_must": [], + "keywords_forbid": [] } }, { "继续执行,无论异常如何": { "keywords": [], "children": [], - "node_id": "python-5-1364" + "node_id": "python-5-1364", + "keywords_must": [], + "keywords_forbid": [] } }, { "优化循环": { "keywords": [], "children": [], - "node_id": "python-5-1365" + "node_id": "python-5-1365", + "keywords_must": [], + "keywords_forbid": [] } }, { "with语句": { "keywords": [], "children": [], - "node_id": "python-5-1366" + "node_id": "python-5-1366", + "keywords_must": [], + "keywords_forbid": [] } }, { "条件表达式": { "keywords": [], "children": [], - "node_id": "python-5-1367" + "node_id": "python-5-1367", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1424" + "node_id": "python-4-1424", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -96,53 +120,69 @@ "序列解包": { "keywords": [], "children": [], - "node_id": "python-5-1368" + "node_id": "python-5-1368", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表解析式": { "keywords": [], "children": [], - "node_id": "python-5-1369" + "node_id": "python-5-1369", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成器表达式": { "keywords": [], "children": [], - "node_id": "python-5-1370" + "node_id": "python-5-1370", + "keywords_must": [], + "keywords_forbid": [] } }, { "集合解析式": { "keywords": [], "children": [], - "node_id": "python-5-1371" + "node_id": "python-5-1371", + "keywords_must": [], + "keywords_forbid": [] } }, { "字典解析式": { "keywords": [], "children": [], - "node_id": "python-5-1372" + "node_id": "python-5-1372", + "keywords_must": [], + "keywords_forbid": [] } }, { "将迭代器链接在一起": { "keywords": [], "children": [], - "node_id": "python-5-1373" + "node_id": "python-5-1373", + "keywords_must": [], + "keywords_forbid": [] } }, { "将迭代器压缩在一起": { "keywords": [], "children": [], - "node_id": "python-5-1374" + "node_id": "python-5-1374", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1425" + "node_id": "python-4-1425", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -153,32 +193,42 @@ "集合": { "keywords": [], "children": [], - "node_id": "python-5-1375" + "node_id": "python-5-1375", + "keywords_must": [], + "keywords_forbid": [] } }, { "命名元组": { "keywords": [], "children": [], - "node_id": "python-5-1376" + "node_id": "python-5-1376", + "keywords_must": [], + "keywords_forbid": [] } }, { "有序字典": { "keywords": [], "children": [], - "node_id": "python-5-1377" + "node_id": "python-5-1377", + "keywords_must": [], + "keywords_forbid": [] } }, { "带有默认值的字典": { "keywords": [], "children": [], - "node_id": "python-5-1378" + "node_id": "python-5-1378", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1426" + "node_id": "python-4-1426", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -189,46 +239,60 @@ "回退(备用)导入": { "keywords": [], "children": [], - "node_id": "python-5-1379" + "node_id": "python-5-1379", + "keywords_must": [], + "keywords_forbid": [] } }, { "从即将发布的版本中导入": { "keywords": [], "children": [], - "node_id": "python-5-1380" + "node_id": "python-5-1380", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用__all__进行自定义导入": { "keywords": [], "children": [], - "node_id": "python-5-1381" + "node_id": "python-5-1381", + "keywords_must": [], + "keywords_forbid": [] } }, { "相对导入": { "keywords": [], "children": [], - "node_id": "python-5-1382" + "node_id": "python-5-1382", + "keywords_must": [], + "keywords_forbid": [] } }, { "__import__函数": { "keywords": [], "children": [], - "node_id": "python-5-1383" + "node_id": "python-5-1383", + "keywords_must": [], + "keywords_forbid": [] } }, { "importlib模块": { "keywords": [], "children": [], - "node_id": "python-5-1384" + "node_id": "python-5-1384", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1427" + "node_id": "python-4-1427", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -239,195 +303,253 @@ "如何安装NIST信标库": { "keywords": [], "children": [], - "node_id": "python-5-1385" + "node_id": "python-5-1385", + "keywords_must": [], + "keywords_forbid": [] } }, { "示例:获取值": { "keywords": [], "children": [], - "node_id": "python-5-1386" + "node_id": "python-5-1386", + "keywords_must": [], + "keywords_forbid": [] } }, { "示例:模拟抛硬币并记录每次正反面的结果": { "keywords": [], "children": [], - "node_id": "python-5-1387" + "node_id": "python-5-1387", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装Pandas和matplotlib": { "keywords": [], "children": [], - "node_id": "python-5-1388" + "node_id": "python-5-1388", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建文本文件": { "keywords": [], "children": [], - "node_id": "python-5-1389" + "node_id": "python-5-1389", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Pandas显示数据": { "keywords": [], "children": [], - "node_id": "python-5-1390" + "node_id": "python-5-1390", + "keywords_must": [], + "keywords_forbid": [] } }, { "进行一些数据分析": { "keywords": [], "children": [], - "node_id": "python-5-1391" + "node_id": "python-5-1391", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用matplotlib进行绘图": { "keywords": [], "children": [], - "node_id": "python-5-1392" + "node_id": "python-5-1392", + "keywords_must": [], + "keywords_forbid": [] } }, { "图表的类型": { "keywords": [], "children": [], - "node_id": "python-5-1393" + "node_id": "python-5-1393", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装Scrapy": { "keywords": [], "children": [], - "node_id": "python-5-1394" + "node_id": "python-5-1394", + "keywords_must": [], + "keywords_forbid": [] } }, { "运行Scrapy": { "keywords": [], "children": [], - "node_id": "python-5-1395" + "node_id": "python-5-1395", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Scrapy获取Web数据": { "keywords": [], "children": [], - "node_id": "python-5-1396" + "node_id": "python-5-1396", + "keywords_must": [], + "keywords_forbid": [] } }, { "通过Scrapy浏览网页": { "keywords": [], "children": [], - "node_id": "python-5-1397" + "node_id": "python-5-1397", + "keywords_must": [], + "keywords_forbid": [] } }, { "shell选项": { "keywords": [], "children": [], - "node_id": "python-5-1398" + "node_id": "python-5-1398", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装Beautiful Soup": { "keywords": [], "children": [], - "node_id": "python-5-1399" + "node_id": "python-5-1399", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Beautiful Soup": { "keywords": [], "children": [], - "node_id": "python-5-1400" + "node_id": "python-5-1400", + "keywords_must": [], + "keywords_forbid": [] } }, { "如何安装feedparser库": { "keywords": [], "children": [], - "node_id": "python-5-1401" + "node_id": "python-5-1401", + "keywords_must": [], + "keywords_forbid": [] } }, { "如何使用feedparser库": { "keywords": [], "children": [], - "node_id": "python-5-1402" + "node_id": "python-5-1402", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装NumPy": { "keywords": [], "children": [], - "node_id": "python-5-1403" + "node_id": "python-5-1403", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用NumPy": { "keywords": [], "children": [], - "node_id": "python-5-1404" + "node_id": "python-5-1404", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用NumPy数组": { "keywords": [], "children": [], - "node_id": "python-5-1405" + "node_id": "python-5-1405", + "keywords_must": [], + "keywords_forbid": [] } }, { "统计度量": { "keywords": [], "children": [], - "node_id": "python-5-1406" + "node_id": "python-5-1406", + "keywords_must": [], + "keywords_forbid": [] } }, { "如何安装Pillow库": { "keywords": [], "children": [], - "node_id": "python-5-1407" + "node_id": "python-5-1407", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像显示:确定文件的大小和类型并显示": { "keywords": [], "children": [], - "node_id": "python-5-1408" + "node_id": "python-5-1408", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像处理:裁剪图像的一部分": { "keywords": [], "children": [], - "node_id": "python-5-1409" + "node_id": "python-5-1409", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机数": { "keywords": [], "children": [], - "node_id": "python-5-1410" + "node_id": "python-5-1410", + "keywords_must": [], + "keywords_forbid": [] } }, { "密码生成器": { "keywords": [], "children": [], - "node_id": "python-5-1411" + "node_id": "python-5-1411", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1428" + "node_id": "python-4-1428", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-8" + "node_id": "python-3-8", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/3.\345\207\275\346\225\260/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/3.\345\207\275\346\225\260/config.json" index 9d5b55e..21bcb17 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/3.\345\207\275\346\225\260/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/3.\345\207\275\346\225\260/config.json" @@ -10,402 +10,516 @@ "keywords": [], "children": [ { - "函数定义def": { - "keywords": [], - "children": [], - "node_id": "python-4-38" - } - }, - { - "参数var": { - "keywords": [], - "children": [], - "node_id": "python-4-39" - } - }, - { - "返回值return": { - "keywords": [], - "children": [], - "node_id": "python-4-40" - } - }, - { - "参数传递": { - "keywords": [], - "children": [], - "node_id": "python-4-41" - } - }, - { - "函数调用": { - "keywords": [], - "children": [], - "node_id": "python-4-42" - } - }, - { - "函数递归": { - "keywords": [], - "children": [], - "node_id": "python-4-43" - } - }, - { - "函数编写风格": { - "keywords": [], - "children": [], - "node_id": "python-4-44" - } - }, - { - "调用函数": { - "keywords": [], - "children": [], - "node_id": "python-4-45" - } - }, - { - "函数的参数": { - "keywords": [], - "children": [], - "node_id": "python-4-46" - } - }, - { - "递归函数": { - "keywords": [], - "children": [], - "node_id": "python-4-47" - } - }, - { - "None值": { - "keywords": [], - "children": [], - "node_id": "python-4-48" - } - }, - { - "调用栈": { - "keywords": [], - "children": [], - "node_id": "python-4-49" - } - }, - { - "局部和全局作用域": { - "keywords": [], - "children": [ - { - "局部变量不能在全局作用域内使用": { - "keywords": [], - "children": [], - "node_id": "python-5-25" - } - }, - { - "局部作用域不能使用其他局部作用域内的变量": { - "keywords": [], - "children": [], - "node_id": "python-5-26" - } - }, - { - "全局变量可以在局部作用域中读取": { - "keywords": [], - "children": [], - "node_id": "python-5-27" - } - } - ], - "node_id": "python-4-50" - } - }, - { - "异常处理": { - "keywords": [], - "children": [], - "node_id": "python-4-51" - } - }, - { - "把函数视作对象": { - "keywords": [], - "children": [], - "node_id": "python-4-52" - } - }, - { - "可调用对象": { - "keywords": [], - "children": [], - "node_id": "python-4-53" - } - }, - { - "用户定义的可调用类型": { - "keywords": [], - "children": [], - "node_id": "python-4-54" - } - }, - { - "函数内省": { - "keywords": [], - "children": [], - "node_id": "python-4-55" - } - }, - { - "从定位参数到仅限关键字参数": { - "keywords": [], - "children": [], - "node_id": "python-4-56" - } - }, - { - "获取关于参数的信息": { - "keywords": [], - "children": [], - "node_id": "python-4-57" - } - }, - { - "支持函数式编程的包": { - "keywords": [], - "children": [], - "node_id": "python-4-58" - } - }, - { - "传递实参": { - "keywords": [], - "children": [ - { - "位置实参": { - "keywords": [], - "children": [], - "node_id": "python-5-28" - } - }, - { - "关键字实参": { - "keywords": [], - "children": [], - "node_id": "python-5-29" - } - }, - { - "默认值": { - "keywords": [], - "children": [], - "node_id": "python-5-30" - } - }, - { - "等效的函数调用": { - "keywords": [], - "children": [], - "node_id": "python-5-31" - } - }, - { - "避免实参错误": { - "keywords": [], - "children": [], - "node_id": "python-5-32" - } - } - ], - "node_id": "python-4-59" - } - }, - { - "返回值": { - "keywords": [], - "children": [ - { - "返回简单值": { - "keywords": [], - "children": [], - "node_id": "python-5-33" - } - }, - { - "让实参变成可选的": { - "keywords": [], - "children": [], - "node_id": "python-5-34" - } - }, - { - "返回字典": { - "keywords": [], - "children": [], - "node_id": "python-5-35" - } - } - ], - "node_id": "python-4-60" - } - }, - { - "传递列表": { - "keywords": [], - "children": [ - { - "在函数中修改列表": { - "keywords": [], - "children": [], - "node_id": "python-5-36" - } - }, - { - "禁止函数修改列表": { - "keywords": [], - "children": [], - "node_id": "python-5-37" - } - } - ], - "node_id": "python-4-61" - } - }, - { - "传递任意数量的实参": { - "keywords": [], - "children": [ - { - "使用任意数量的关键字实参": { - "keywords": [], - "children": [], - "node_id": "python-5-38" - } - }, - { - "导入特定的函数": { - "keywords": [], - "children": [], - "node_id": "python-5-39" - } - }, - { - "使用as给函数指定别名": { - "keywords": [], - "children": [], - "node_id": "python-5-40" - } - }, - { - "使用as给模块指定别名": { - "keywords": [], - "children": [], - "node_id": "python-5-41" - } - }, - { - "导入模块中的所有函数": { - "keywords": [], - "children": [], - "node_id": "python-5-42" - } - } - ], - "node_id": "python-4-62" - } - }, - { - "函数编写指南": { - "keywords": [], - "children": [], - "node_id": "python-4-63" - } - }, - { - "编写可接受任意数量参数的函数": { - "keywords": [], - "children": [], - "node_id": "python-4-64" - } - }, - { - "编写只接受关键字参数的函数": { - "keywords": [], - "children": [], - "node_id": "python-4-65" - } - }, - { - "将元数据信息附加到函数参数上": { - "keywords": [], - "children": [], - "node_id": "python-4-66" - } - }, - { - "从函数中返回多个值": { - "keywords": [], - "children": [], - "node_id": "python-4-67" - } - }, - { - "定义带有默认参数的函数": { - "keywords": [], - "children": [], - "node_id": "python-4-68" - } - }, - { - "定义匿名或内联函数": { - "keywords": [], - "children": [], - "node_id": "python-4-69" - } - }, - { - "在匿名函数中绑定变量的值": { - "keywords": [], - "children": [], - "node_id": "python-4-70" - } - }, - { - "让带有N个参数的可调用对象以较少的参数形式调用": { - "keywords": [], - "children": [], - "node_id": "python-4-71" - } - }, - { - "用函数替代只有单个方法的类": { - "keywords": [], - "children": [], - "node_id": "python-4-72" - } - }, - { - "在回调函数中携带额外的状态": { - "keywords": [], - "children": [], - "node_id": "python-4-73" - } - }, - { - "内联回调函数": { - "keywords": [], - "children": [], - "node_id": "python-4-74" - } - }, - { - "访问定义在闭包内的变量": { - "keywords": [], - "children": [], - "node_id": "python-4-75" - } + "函数定义def": { + "keywords": [], + "children": [], + "node_id": "python-4-38", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "参数var": { + "keywords": [], + "children": [], + "node_id": "python-4-39", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "返回值return": { + "keywords": [], + "children": [], + "node_id": "python-4-40", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "参数传递": { + "keywords": [], + "children": [], + "node_id": "python-4-41", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "函数调用": { + "keywords": [], + "children": [], + "node_id": "python-4-42", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "函数递归": { + "keywords": [], + "children": [], + "node_id": "python-4-43", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "函数编写风格": { + "keywords": [], + "children": [], + "node_id": "python-4-44", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "调用函数": { + "keywords": [], + "children": [], + "node_id": "python-4-45", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "函数的参数": { + "keywords": [], + "children": [], + "node_id": "python-4-46", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "递归函数": { + "keywords": [], + "children": [], + "node_id": "python-4-47", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "None值": { + "keywords": [], + "children": [], + "node_id": "python-4-48", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "调用栈": { + "keywords": [], + "children": [], + "node_id": "python-4-49", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "局部和全局作用域": { + "keywords": [], + "children": [ + { + "局部变量不能在全局作用域内使用": { + "keywords": [], + "children": [], + "node_id": "python-5-25", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "局部作用域不能使用其他局部作用域内的变量": { + "keywords": [], + "children": [], + "node_id": "python-5-26", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "全局变量可以在局部作用域中读取": { + "keywords": [], + "children": [], + "node_id": "python-5-27", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-50", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "异常处理": { + "keywords": [], + "children": [], + "node_id": "python-4-51", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "把函数视作对象": { + "keywords": [], + "children": [], + "node_id": "python-4-52", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "可调用对象": { + "keywords": [], + "children": [], + "node_id": "python-4-53", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "用户定义的可调用类型": { + "keywords": [], + "children": [], + "node_id": "python-4-54", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "函数内省": { + "keywords": [], + "children": [], + "node_id": "python-4-55", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "从定位参数到仅限关键字参数": { + "keywords": [], + "children": [], + "node_id": "python-4-56", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "获取关于参数的信息": { + "keywords": [], + "children": [], + "node_id": "python-4-57", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "支持函数式编程的包": { + "keywords": [], + "children": [], + "node_id": "python-4-58", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "传递实参": { + "keywords": [], + "children": [ + { + "位置实参": { + "keywords": [], + "children": [], + "node_id": "python-5-28", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "关键字实参": { + "keywords": [], + "children": [], + "node_id": "python-5-29", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "默认值": { + "keywords": [], + "children": [], + "node_id": "python-5-30", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "等效的函数调用": { + "keywords": [], + "children": [], + "node_id": "python-5-31", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "避免实参错误": { + "keywords": [], + "children": [], + "node_id": "python-5-32", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-59", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "返回值": { + "keywords": [], + "children": [ + { + "返回简单值": { + "keywords": [], + "children": [], + "node_id": "python-5-33", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "让实参变成可选的": { + "keywords": [], + "children": [], + "node_id": "python-5-34", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "返回字典": { + "keywords": [], + "children": [], + "node_id": "python-5-35", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-60", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "传递列表": { + "keywords": [], + "children": [ + { + "在函数中修改列表": { + "keywords": [], + "children": [], + "node_id": "python-5-36", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "禁止函数修改列表": { + "keywords": [], + "children": [], + "node_id": "python-5-37", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-61", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "传递任意数量的实参": { + "keywords": [], + "children": [ + { + "使用任意数量的关键字实参": { + "keywords": [], + "children": [], + "node_id": "python-5-38", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "导入特定的函数": { + "keywords": [], + "children": [], + "node_id": "python-5-39", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "使用as给函数指定别名": { + "keywords": [], + "children": [], + "node_id": "python-5-40", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "使用as给模块指定别名": { + "keywords": [], + "children": [], + "node_id": "python-5-41", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "导入模块中的所有函数": { + "keywords": [], + "children": [], + "node_id": "python-5-42", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-62", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "函数编写指南": { + "keywords": [], + "children": [], + "node_id": "python-4-63", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "编写可接受任意数量参数的函数": { + "keywords": [], + "children": [], + "node_id": "python-4-64", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "编写只接受关键字参数的函数": { + "keywords": [], + "children": [], + "node_id": "python-4-65", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "将元数据信息附加到函数参数上": { + "keywords": [], + "children": [], + "node_id": "python-4-66", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "从函数中返回多个值": { + "keywords": [], + "children": [], + "node_id": "python-4-67", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "定义带有默认参数的函数": { + "keywords": [], + "children": [], + "node_id": "python-4-68", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "定义匿名或内联函数": { + "keywords": [], + "children": [], + "node_id": "python-4-69", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "在匿名函数中绑定变量的值": { + "keywords": [], + "children": [], + "node_id": "python-4-70", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "让带有N个参数的可调用对象以较少的参数形式调用": { + "keywords": [], + "children": [], + "node_id": "python-4-71", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "用函数替代只有单个方法的类": { + "keywords": [], + "children": [], + "node_id": "python-4-72", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "在回调函数中携带额外的状态": { + "keywords": [], + "children": [], + "node_id": "python-4-73", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "内联回调函数": { + "keywords": [], + "children": [], + "node_id": "python-4-74", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "访问定义在闭包内的变量": { + "keywords": [], + "children": [], + "node_id": "python-4-75", + "keywords_must": [], + "keywords_forbid": [] + } } ], - "node_id": "python-3-9" + "node_id": "python-3-9", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/4.\347\261\273/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/4.\347\261\273/config.json" index 781e4ec..bf6c20b 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/4.\347\261\273/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/4.\347\261\273/config.json" @@ -7,296 +7,380 @@ "keywords": [], "children": [ { - "类定义class": { - "keywords": [], - "children": [], - "node_id": "python-4-76" - } + "类定义class": { + "keywords": [], + "children": [], + "node_id": "python-4-76", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "作用域和命名空间": { - "keywords": [], - "children": [], - "node_id": "python-4-77" - } + "作用域和命名空间": { + "keywords": [], + "children": [], + "node_id": "python-4-77", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "对象": { - "keywords": [], - "children": [], - "node_id": "python-4-78" - } + "对象": { + "keywords": [], + "children": [], + "node_id": "python-4-78", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "属性和方法": { - "keywords": [], - "children": [ - { - "模拟数值类型": { - "keywords": [], - "children": [], - "node_id": "python-5-43" - } - }, - { - "字符串表示形式": { - "keywords": [], - "children": [], - "node_id": "python-5-44" - } - }, - { - "自定义的布尔值": { - "keywords": [], - "children": [], - "node_id": "python-5-45" - } - } - ], - "node_id": "python-4-79" - } + "属性和方法": { + "keywords": [], + "children": [ + { + "模拟数值类型": { + "keywords": [], + "children": [], + "node_id": "python-5-43", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "字符串表示形式": { + "keywords": [], + "children": [], + "node_id": "python-5-44", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "自定义的布尔值": { + "keywords": [], + "children": [], + "node_id": "python-5-45", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-79", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "类编码风格": { - "keywords": [], - "children": [], - "node_id": "python-4-80" - } + "类编码风格": { + "keywords": [], + "children": [], + "node_id": "python-4-80", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "初探类": { - "keywords": [], - "children": [ - { - "类定义语法": { - "keywords": [], - "children": [], - "node_id": "python-5-46" - } - }, - { - "类对象": { - "keywords": [], - "children": [], - "node_id": "python-5-47" - } - }, - { - "方法对象": { - "keywords": [], - "children": [], - "node_id": "python-5-48" - } - } - ], - "node_id": "python-4-81" - } + "初探类": { + "keywords": [], + "children": [ + { + "类定义语法": { + "keywords": [], + "children": [], + "node_id": "python-5-46", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "类对象": { + "keywords": [], + "children": [], + "node_id": "python-5-47", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "方法对象": { + "keywords": [], + "children": [], + "node_id": "python-5-48", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-81", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "补充说明": { - "keywords": [], - "children": [], - "node_id": "python-4-82" - } + "补充说明": { + "keywords": [], + "children": [], + "node_id": "python-4-82", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "私有变量": { - "keywords": [], - "children": [], - "node_id": "python-4-83" - } + "私有变量": { + "keywords": [], + "children": [], + "node_id": "python-4-83", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "生成器表达式": { - "keywords": [], - "children": [], - "node_id": "python-4-84" - } + "生成器表达式": { + "keywords": [], + "children": [], + "node_id": "python-4-84", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "类到底是什么": { - "keywords": [], - "children": [], - "node_id": "python-4-85" - } + "类到底是什么": { + "keywords": [], + "children": [], + "node_id": "python-4-85", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "创建自定义类": { - "keywords": [], - "children": [], - "node_id": "python-4-86" - } + "创建自定义类": { + "keywords": [], + "children": [], + "node_id": "python-4-86", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "再谈隐藏": { - "keywords": [], - "children": [], - "node_id": "python-4-87" - } + "再谈隐藏": { + "keywords": [], + "children": [], + "node_id": "python-4-87", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "类的命名空间": { - "keywords": [], - "children": [], - "node_id": "python-4-88" - } + "类的命名空间": { + "keywords": [], + "children": [], + "node_id": "python-4-88", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "指定超类": { - "keywords": [], - "children": [], - "node_id": "python-4-89" - } + "指定超类": { + "keywords": [], + "children": [], + "node_id": "python-4-89", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "深入探讨继承": { - "keywords": [], - "children": [], - "node_id": "python-4-90" - } + "深入探讨继承": { + "keywords": [], + "children": [], + "node_id": "python-4-90", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "多个超类": { - "keywords": [], - "children": [], - "node_id": "python-4-91" - } + "多个超类": { + "keywords": [], + "children": [], + "node_id": "python-4-91", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "接口和内省": { - "keywords": [], - "children": [ - { - "Python文化中的接口和协议": { - "keywords": [], - "children": [], - "node_id": "python-5-49" - } - }, - { - "Python喜欢序列": { - "keywords": [], - "children": [], - "node_id": "python-5-50" - } - }, - { - "使用猴子补丁在运行时实现协议": { - "keywords": [], - "children": [], - "node_id": "python-5-51" - } - }, - { - "Alex Martelli的水禽": { - "keywords": [], - "children": [], - "node_id": "python-5-52" - } - }, - { - "定义抽象基类的子类": { - "keywords": [], - "children": [], - "node_id": "python-5-53" - } - }, - { - "标准库中的抽象基类": { - "keywords": [], - "children": [], - "node_id": "python-5-54" - } - }, - { - "定义并使用一个抽象基类": { - "keywords": [], - "children": [], - "node_id": "python-5-55" - } - }, - { - "Tombola子类的测试方法": { - "keywords": [], - "children": [], - "node_id": "python-5-56" - } - }, - { - "Python使用register的方式": { - "keywords": [], - "children": [], - "node_id": "python-5-57" - } - }, - { - "鹅的行为有可能像鸭子": { - "keywords": [], - "children": [], - "node_id": "python-5-58" - } - } - ], - "node_id": "python-4-92" - } + "接口和内省": { + "keywords": [], + "children": [ + { + "Python文化中的接口和协议": { + "keywords": [], + "children": [], + "node_id": "python-5-49", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "Python喜欢序列": { + "keywords": [], + "children": [], + "node_id": "python-5-50", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "使用猴子补丁在运行时实现协议": { + "keywords": [], + "children": [], + "node_id": "python-5-51", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "Alex Martelli的水禽": { + "keywords": [], + "children": [], + "node_id": "python-5-52", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "定义抽象基类的子类": { + "keywords": [], + "children": [], + "node_id": "python-5-53", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "标准库中的抽象基类": { + "keywords": [], + "children": [], + "node_id": "python-5-54", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "定义并使用一个抽象基类": { + "keywords": [], + "children": [], + "node_id": "python-5-55", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "Tombola子类的测试方法": { + "keywords": [], + "children": [], + "node_id": "python-5-56", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "Python使用register的方式": { + "keywords": [], + "children": [], + "node_id": "python-5-57", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "鹅的行为有可能像鸭子": { + "keywords": [], + "children": [], + "node_id": "python-5-58", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-92", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "抽象基类": { - "keywords": [], - "children": [], - "node_id": "python-4-93" - } + "抽象基类": { + "keywords": [], + "children": [], + "node_id": "python-4-93", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "导入类": { - "keywords": [], - "children": [ - { - "导入单个类": { - "keywords": [], - "children": [], - "node_id": "python-5-59" - } - }, - { - "在一个模块中存储多个类": { - "keywords": [], - "children": [], - "node_id": "python-5-60" - } - }, - { - "从一个模块中导入多个类": { - "keywords": [], - "children": [], - "node_id": "python-5-61" - } - }, - { - "导入模块中的所有类": { - "keywords": [], - "children": [], - "node_id": "python-5-62" - } - }, - { - "自定义工作流程": { - "keywords": [], - "children": [], - "node_id": "python-5-63" - } - } - ], - "node_id": "python-4-94" - } + "导入类": { + "keywords": [], + "children": [ + { + "导入单个类": { + "keywords": [], + "children": [], + "node_id": "python-5-59", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "在一个模块中存储多个类": { + "keywords": [], + "children": [], + "node_id": "python-5-60", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "从一个模块中导入多个类": { + "keywords": [], + "children": [], + "node_id": "python-5-61", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "导入模块中的所有类": { + "keywords": [], + "children": [], + "node_id": "python-5-62", + "keywords_must": [], + "keywords_forbid": [] + } + }, + { + "自定义工作流程": { + "keywords": [], + "children": [], + "node_id": "python-5-63", + "keywords_must": [], + "keywords_forbid": [] + } + } + ], + "node_id": "python-4-94", + "keywords_must": [], + "keywords_forbid": [] + } }, { - "Python标准库": { - "keywords": [], - "children": [], - "node_id": "python-4-95" - } + "Python标准库": { + "keywords": [], + "children": [], + "node_id": "python-4-95", + "keywords_must": [], + "keywords_forbid": [] + } } ], - "node_id": "python-3-10" + "node_id": "python-3-10", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/5.\351\241\272\345\272\217\350\257\255\345\217\245\347\273\223\346\236\204/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/5.\351\241\272\345\272\217\350\257\255\345\217\245\347\273\223\346\236\204/config.json" index a14841d..6dfe296 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/5.\351\241\272\345\272\217\350\257\255\345\217\245\347\273\223\346\236\204/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/5.\351\241\272\345\272\217\350\257\255\345\217\245\347\273\223\346\236\204/config.json" @@ -4,5 +4,12 @@ ], "keywords": [], "children": [], - "node_id": "python-3-11" + "node_id": "python-3-11", + "keywords_must": [ + "顺序语句", + "顺序结构", + "顺序语句结构", + "顺序控制语句" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/6.\346\235\241\344\273\266\345\222\214\345\210\206\346\224\257/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/6.\346\235\241\344\273\266\345\222\214\345\210\206\346\224\257/config.json" index a8721ba..a9b1501 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/6.\346\235\241\344\273\266\345\222\214\345\210\206\346\224\257/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/6.\346\235\241\344\273\266\345\222\214\345\210\206\346\224\257/config.json" @@ -13,21 +13,27 @@ "if-else语句": { "keywords": [], "children": [], - "node_id": "python-5-64" + "node_id": "python-5-64", + "keywords_must": [], + "keywords_forbid": [] } }, { "if-elif-else结构": { "keywords": [], "children": [], - "node_id": "python-5-65" + "node_id": "python-5-65", + "keywords_must": [], + "keywords_forbid": [] } }, { "省略else代码块": { "keywords": [], "children": [], - "node_id": "python-5-66" + "node_id": "python-5-66", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -38,57 +44,75 @@ "检查特殊元素": { "keywords": [], "children": [], - "node_id": "python-6-16" + "node_id": "python-6-16", + "keywords_must": [], + "keywords_forbid": [] } }, { "确定列表不是空的": { "keywords": [], "children": [], - "node_id": "python-6-17" + "node_id": "python-6-17", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-67" + "node_id": "python-5-67", + "keywords_must": [], + "keywords_forbid": [] } }, { "设置if语句的格式": { "keywords": [], "children": [], - "node_id": "python-5-68" + "node_id": "python-5-68", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-96" + "node_id": "python-4-96", + "keywords_must": [], + "keywords_forbid": [] } }, { "elif": { "keywords": [], "children": [], - "node_id": "python-4-97" + "node_id": "python-4-97", + "keywords_must": [], + "keywords_forbid": [] } }, { "else": { "keywords": [], "children": [], - "node_id": "python-4-98" + "node_id": "python-4-98", + "keywords_must": [], + "keywords_forbid": [] } }, { "条件判断": { "keywords": [], "children": [], - "node_id": "python-4-99" + "node_id": "python-4-99", + "keywords_must": [], + "keywords_forbid": [] } }, { "这正是布尔值的用武之地": { "keywords": [], "children": [], - "node_id": "python-4-100" + "node_id": "python-4-100", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -99,76 +123,100 @@ "字典列表": { "keywords": [], "children": [], - "node_id": "python-5-69" + "node_id": "python-5-69", + "keywords_must": [], + "keywords_forbid": [] } }, { "在字典中存储列表": { "keywords": [], "children": [], - "node_id": "python-5-70" + "node_id": "python-5-70", + "keywords_must": [], + "keywords_forbid": [] } }, { "在字典中存储字典": { "keywords": [], "children": [], - "node_id": "python-5-71" + "node_id": "python-5-71", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-101" + "node_id": "python-4-101", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查是否相等": { "keywords": [], "children": [], - "node_id": "python-4-102" + "node_id": "python-4-102", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查是否相等时忽略大小写": { "keywords": [], "children": [], - "node_id": "python-4-103" + "node_id": "python-4-103", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查是否不相等": { "keywords": [], "children": [], - "node_id": "python-4-104" + "node_id": "python-4-104", + "keywords_must": [], + "keywords_forbid": [] } }, { "数值比较": { "keywords": [], "children": [], - "node_id": "python-4-105" + "node_id": "python-4-105", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查多个条件": { "keywords": [], "children": [], - "node_id": "python-4-106" + "node_id": "python-4-106", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查特定值是否包含在列表中": { "keywords": [], "children": [], - "node_id": "python-4-107" + "node_id": "python-4-107", + "keywords_must": [], + "keywords_forbid": [] } }, { "布尔表达式": { "keywords": [], "children": [], - "node_id": "python-4-108" + "node_id": "python-4-108", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-12" + "node_id": "python-3-12", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/7.\345\276\252\347\216\257/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/7.\345\276\252\347\216\257/config.json" index b343ead..1dd7c23 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/7.\345\276\252\347\216\257/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/7.\345\276\252\347\216\257/config.json" @@ -9,65 +9,85 @@ "for": { "keywords": [], "children": [], - "node_id": "python-4-109" + "node_id": "python-4-109", + "keywords_must": [], + "keywords_forbid": [] } }, { "while": { "keywords": [], "children": [], - "node_id": "python-4-110" + "node_id": "python-4-110", + "keywords_must": [], + "keywords_forbid": [] } }, { "break": { "keywords": [], "children": [], - "node_id": "python-4-111" + "node_id": "python-4-111", + "keywords_must": [], + "keywords_forbid": [] } }, { "continue": { "keywords": [], "children": [], - "node_id": "python-4-112" + "node_id": "python-4-112", + "keywords_must": [], + "keywords_forbid": [] } }, { "循环判断": { "keywords": [], "children": [], - "node_id": "python-4-113" + "node_id": "python-4-113", + "keywords_must": [], + "keywords_forbid": [] } }, { "迭代字典": { "keywords": [], "children": [], - "node_id": "python-4-114" + "node_id": "python-4-114", + "keywords_must": [], + "keywords_forbid": [] } }, { "一些迭代工具": { "keywords": [], "children": [], - "node_id": "python-4-115" + "node_id": "python-4-115", + "keywords_must": [], + "keywords_forbid": [] } }, { "跳出循环": { "keywords": [], "children": [], - "node_id": "python-4-116" + "node_id": "python-4-116", + "keywords_must": [], + "keywords_forbid": [] } }, { "循环中的else子句": { "keywords": [], "children": [], - "node_id": "python-4-117" + "node_id": "python-4-117", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-13" + "node_id": "python-3-13", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/8.\346\225\260\346\215\256\347\261\273\345\236\213/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/8.\346\225\260\346\215\256\347\261\273\345\236\213/config.json" index b6f714b..bdfbedc 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/8.\346\225\260\346\215\256\347\261\273\345\236\213/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/8.\346\225\260\346\215\256\347\261\273\345\236\213/config.json" @@ -11,21 +11,27 @@ "整型": { "keywords": [], "children": [], - "node_id": "python-4-118" + "node_id": "python-4-118", + "keywords_must": [], + "keywords_forbid": [] } }, { "浮点型": { "keywords": [], "children": [], - "node_id": "python-4-119" + "node_id": "python-4-119", + "keywords_must": [], + "keywords_forbid": [] } }, { "布尔型": { "keywords": [], "children": [], - "node_id": "python-4-120" + "node_id": "python-4-120", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -36,35 +42,45 @@ "单引号字符串以及对引号转义": { "keywords": [], "children": [], - "node_id": "python-5-72" + "node_id": "python-5-72", + "keywords_must": [], + "keywords_forbid": [] } }, { "拼接字符串": { "keywords": [], "children": [], - "node_id": "python-5-73" + "node_id": "python-5-73", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串表示str和repr": { "keywords": [], "children": [], - "node_id": "python-5-74" + "node_id": "python-5-74", + "keywords_must": [], + "keywords_forbid": [] } }, { "长字符串、原始字符串和字节": { "keywords": [], "children": [], - "node_id": "python-5-75" + "node_id": "python-5-75", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串基本操作": { "keywords": [], "children": [], - "node_id": "python-5-76" + "node_id": "python-5-76", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -75,39 +91,51 @@ "替换字段名": { "keywords": [], "children": [], - "node_id": "python-6-18" + "node_id": "python-6-18", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-77" + "node_id": "python-5-77", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用方法修改字符串的大小写": { "keywords": [], "children": [], - "node_id": "python-5-78" + "node_id": "python-5-78", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用制表符或换行符来添加空白": { "keywords": [], "children": [], - "node_id": "python-5-79" + "node_id": "python-5-79", + "keywords_must": [], + "keywords_forbid": [] } }, { "删除空白": { "keywords": [], "children": [], - "node_id": "python-5-80" + "node_id": "python-5-80", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用字符串时避免语法错误": { "keywords": [], "children": [], - "node_id": "python-5-81" + "node_id": "python-5-81", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -118,129 +146,169 @@ "使用encode方法编码": { "keywords": [], "children": [], - "node_id": "python-6-19" + "node_id": "python-6-19", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用decode方法解码": { "keywords": [], "children": [], - "node_id": "python-6-20" + "node_id": "python-6-20", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-82" + "node_id": "python-5-82", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-121" + "node_id": "python-4-121", + "keywords_must": [], + "keywords_forbid": [] } }, { "datetime --- 基本的日期和时间类型": { "keywords": [], "children": [], - "node_id": "python-4-122" + "node_id": "python-4-122", + "keywords_must": [], + "keywords_forbid": [] } }, { "zoneinfo --- IANA时区支持": { "keywords": [], "children": [], - "node_id": "python-4-123" + "node_id": "python-4-123", + "keywords_must": [], + "keywords_forbid": [] } }, { "calendar --- 日历相关函数": { "keywords": [], "children": [], - "node_id": "python-4-124" + "node_id": "python-4-124", + "keywords_must": [], + "keywords_forbid": [] } }, { "collections --- 容器数据类型": { "keywords": [], "children": [], - "node_id": "python-4-125" + "node_id": "python-4-125", + "keywords_must": [], + "keywords_forbid": [] } }, { "collections.abc --- 容器的抽象基类": { "keywords": [], "children": [], - "node_id": "python-4-126" + "node_id": "python-4-126", + "keywords_must": [], + "keywords_forbid": [] } }, { "heapq --- 堆队列算法": { "keywords": [], "children": [], - "node_id": "python-4-127" + "node_id": "python-4-127", + "keywords_must": [], + "keywords_forbid": [] } }, { "bisect --- 数组二分查找算法": { "keywords": [], "children": [], - "node_id": "python-4-128" + "node_id": "python-4-128", + "keywords_must": [], + "keywords_forbid": [] } }, { "array --- 高效的数值数组": { "keywords": [], "children": [], - "node_id": "python-4-129" + "node_id": "python-4-129", + "keywords_must": [], + "keywords_forbid": [] } }, { "weakref --- 弱引用": { "keywords": [], "children": [], - "node_id": "python-4-130" + "node_id": "python-4-130", + "keywords_must": [], + "keywords_forbid": [] } }, { "types --- 动态类型创建和内置类型名称": { "keywords": [], "children": [], - "node_id": "python-4-131" + "node_id": "python-4-131", + "keywords_must": [], + "keywords_forbid": [] } }, { "copy --- 浅层 (shallow) 和深层 (deep) 复制操作": { "keywords": [], "children": [], - "node_id": "python-4-132" + "node_id": "python-4-132", + "keywords_must": [], + "keywords_forbid": [] } }, { "pprint --- 数据美化输出": { "keywords": [], "children": [], - "node_id": "python-4-133" + "node_id": "python-4-133", + "keywords_must": [], + "keywords_forbid": [] } }, { "reprlib --- 另一种repr 实现": { "keywords": [], "children": [], - "node_id": "python-4-134" + "node_id": "python-4-134", + "keywords_must": [], + "keywords_forbid": [] } }, { "enum --- 对枚举的支持": { "keywords": [], "children": [], - "node_id": "python-4-135" + "node_id": "python-4-135", + "keywords_must": [], + "keywords_forbid": [] } }, { "graphlib --- Functionality to operate with graph-like structures": { "keywords": [], "children": [], - "node_id": "python-4-136" + "node_id": "python-4-136", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-14" + "node_id": "python-3-14", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/9.\345\206\205\347\275\256\347\261\273/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/9.\345\206\205\347\275\256\347\261\273/config.json" index 1f4f6c1..92841f7 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/9.\345\206\205\347\275\256\347\261\273/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/9.\345\206\205\347\275\256\347\261\273/config.json" @@ -12,7 +12,9 @@ "函数list": { "keywords": [], "children": [], - "node_id": "python-5-83" + "node_id": "python-5-83", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -27,25 +29,33 @@ "深入研究循环": { "keywords": [], "children": [], - "node_id": "python-7-0" + "node_id": "python-7-0", + "keywords_must": [], + "keywords_forbid": [] } }, { "在for循环中执行更多操作": { "keywords": [], "children": [], - "node_id": "python-7-1" + "node_id": "python-7-1", + "keywords_must": [], + "keywords_forbid": [] } }, { "在for循环结束后执行一些操作": { "keywords": [], "children": [], - "node_id": "python-7-2" + "node_id": "python-7-2", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-21" + "node_id": "python-6-21", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -56,39 +66,51 @@ "忘记缩进": { "keywords": [], "children": [], - "node_id": "python-7-3" + "node_id": "python-7-3", + "keywords_must": [], + "keywords_forbid": [] } }, { "忘记缩进额外的代码行": { "keywords": [], "children": [], - "node_id": "python-7-4" + "node_id": "python-7-4", + "keywords_must": [], + "keywords_forbid": [] } }, { "不必要的缩进": { "keywords": [], "children": [], - "node_id": "python-7-5" + "node_id": "python-7-5", + "keywords_must": [], + "keywords_forbid": [] } }, { "循环后不必要的缩进": { "keywords": [], "children": [], - "node_id": "python-7-6" + "node_id": "python-7-6", + "keywords_must": [], + "keywords_forbid": [] } }, { "遗漏了冒号": { "keywords": [], "children": [], - "node_id": "python-7-7" + "node_id": "python-7-7", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-22" + "node_id": "python-6-22", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -99,25 +121,33 @@ "使用range创建数字列表": { "keywords": [], "children": [], - "node_id": "python-7-8" + "node_id": "python-7-8", + "keywords_must": [], + "keywords_forbid": [] } }, { "对数字列表执行简单的统计计算": { "keywords": [], "children": [], - "node_id": "python-7-9" + "node_id": "python-7-9", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表解析": { "keywords": [], "children": [], - "node_id": "python-7-10" + "node_id": "python-7-10", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-23" + "node_id": "python-6-23", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -128,131 +158,171 @@ "格式设置指南": { "keywords": [], "children": [], - "node_id": "python-7-11" + "node_id": "python-7-11", + "keywords_must": [], + "keywords_forbid": [] } }, { "行长": { "keywords": [], "children": [], - "node_id": "python-7-12" + "node_id": "python-7-12", + "keywords_must": [], + "keywords_forbid": [] } }, { "空行": { "keywords": [], "children": [], - "node_id": "python-7-13" + "node_id": "python-7-13", + "keywords_must": [], + "keywords_forbid": [] } }, { "其他格式设置指南": { "keywords": [], "children": [], - "node_id": "python-7-14" + "node_id": "python-7-14", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-24" + "node_id": "python-6-24", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-84" + "node_id": "python-5-84", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表方法": { "keywords": [], "children": [], - "node_id": "python-5-85" + "node_id": "python-5-85", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表数据类型": { "keywords": [], "children": [], - "node_id": "python-5-86" + "node_id": "python-5-86", + "keywords_must": [], + "keywords_forbid": [] } }, { "增强的赋值操作": { "keywords": [], "children": [], - "node_id": "python-5-87" + "node_id": "python-5-87", + "keywords_must": [], + "keywords_forbid": [] } }, { "序列数据类型": { "keywords": [], "children": [], - "node_id": "python-5-88" + "node_id": "python-5-88", + "keywords_must": [], + "keywords_forbid": [] } }, { "引用": { "keywords": [], "children": [], - "node_id": "python-5-89" + "node_id": "python-5-89", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问列表元素": { "keywords": [], "children": [], - "node_id": "python-5-90" + "node_id": "python-5-90", + "keywords_must": [], + "keywords_forbid": [] } }, { "索引从0而不是1开始": { "keywords": [], "children": [], - "node_id": "python-5-91" + "node_id": "python-5-91", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用列表中的各个值": { "keywords": [], "children": [], - "node_id": "python-5-92" + "node_id": "python-5-92", + "keywords_must": [], + "keywords_forbid": [] } }, { "遍历切片": { "keywords": [], "children": [], - "node_id": "python-5-93" + "node_id": "python-5-93", + "keywords_must": [], + "keywords_forbid": [] } }, { "复制列表": { "keywords": [], "children": [], - "node_id": "python-5-94" + "node_id": "python-5-94", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表的创建和删除": { "keywords": [], "children": [], - "node_id": "python-5-95" + "node_id": "python-5-95", + "keywords_must": [], + "keywords_forbid": [] } }, { "对列表进行统计计算": { "keywords": [], "children": [], - "node_id": "python-5-96" + "node_id": "python-5-96", + "keywords_must": [], + "keywords_forbid": [] } }, { "对列表进行排序": { "keywords": [], "children": [], - "node_id": "python-5-97" + "node_id": "python-5-97", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-137" + "node_id": "python-4-137", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -263,49 +333,63 @@ "访问字典中的值": { "keywords": [], "children": [], - "node_id": "python-5-98" + "node_id": "python-5-98", + "keywords_must": [], + "keywords_forbid": [] } }, { "添加键值对": { "keywords": [], "children": [], - "node_id": "python-5-99" + "node_id": "python-5-99", + "keywords_must": [], + "keywords_forbid": [] } }, { "先创建一个空字典": { "keywords": [], "children": [], - "node_id": "python-5-100" + "node_id": "python-5-100", + "keywords_must": [], + "keywords_forbid": [] } }, { "修改字典中的值": { "keywords": [], "children": [], - "node_id": "python-5-101" + "node_id": "python-5-101", + "keywords_must": [], + "keywords_forbid": [] } }, { "删除键值对": { "keywords": [], "children": [], - "node_id": "python-5-102" + "node_id": "python-5-102", + "keywords_must": [], + "keywords_forbid": [] } }, { "由类似对象组成的字典": { "keywords": [], "children": [], - "node_id": "python-5-103" + "node_id": "python-5-103", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用get来访问值": { "keywords": [], "children": [], - "node_id": "python-5-104" + "node_id": "python-5-104", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -316,50 +400,66 @@ "遍历所有键值对": { "keywords": [], "children": [], - "node_id": "python-6-25" + "node_id": "python-6-25", + "keywords_must": [], + "keywords_forbid": [] } }, { "遍历字典中的所有键": { "keywords": [], "children": [], - "node_id": "python-6-26" + "node_id": "python-6-26", + "keywords_must": [], + "keywords_forbid": [] } }, { "按特定顺序遍历字典中的所有键": { "keywords": [], "children": [], - "node_id": "python-6-27" + "node_id": "python-6-27", + "keywords_must": [], + "keywords_forbid": [] } }, { "遍历字典中的所有值": { "keywords": [], "children": [], - "node_id": "python-6-28" + "node_id": "python-6-28", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-105" + "node_id": "python-5-105", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问字典": { "keywords": [], "children": [], - "node_id": "python-5-106" + "node_id": "python-5-106", + "keywords_must": [], + "keywords_forbid": [] } }, { "字典推导式": { "keywords": [], "children": [], - "node_id": "python-5-107" + "node_id": "python-5-107", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-138" + "node_id": "python-4-138", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -370,46 +470,60 @@ "定义元组": { "keywords": [], "children": [], - "node_id": "python-5-108" + "node_id": "python-5-108", + "keywords_must": [], + "keywords_forbid": [] } }, { "遍历元组中的所有值": { "keywords": [], "children": [], - "node_id": "python-5-109" + "node_id": "python-5-109", + "keywords_must": [], + "keywords_forbid": [] } }, { "修改元组变量": { "keywords": [], "children": [], - "node_id": "python-5-110" + "node_id": "python-5-110", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问元组元素": { "keywords": [], "children": [], - "node_id": "python-5-111" + "node_id": "python-5-111", + "keywords_must": [], + "keywords_forbid": [] } }, { "修改元组": { "keywords": [], "children": [], - "node_id": "python-5-112" + "node_id": "python-5-112", + "keywords_must": [], + "keywords_forbid": [] } }, { "元组推导式": { "keywords": [], "children": [], - "node_id": "python-5-113" + "node_id": "python-5-113", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-139" + "node_id": "python-4-139", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -420,34 +534,46 @@ "创建集合": { "keywords": [], "children": [], - "node_id": "python-5-114" + "node_id": "python-5-114", + "keywords_must": [], + "keywords_forbid": [] } }, { "集合的交集、并集和差集运算": { "keywords": [], "children": [], - "node_id": "python-5-115" + "node_id": "python-5-115", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-140" + "node_id": "python-4-140", + "keywords_must": [], + "keywords_forbid": [] } }, { "整型:int": { "keywords": [], "children": [], - "node_id": "python-4-141" + "node_id": "python-4-141", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串:str": { "keywords": [], "children": [], - "node_id": "python-4-142" + "node_id": "python-4-142", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-15" + "node_id": "python-3-15", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/config.json" "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/config.json" index 9a169d9..aa1230d 100644 --- "a/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/config.json" +++ "b/data/1.python\345\210\235\351\230\266/2.\345\237\272\347\241\200\350\257\255\346\263\225/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-1", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/config.json" index a7f4e0c..8118544 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/1.\345\210\227\350\241\250\346\216\250\345\257\274\345\274\217/config.json" @@ -7,5 +7,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-17" -} + "node_id": "python-3-17", + "keywords_must": [], + "keywords_forbid": [] +} \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/10.\345\255\227\347\254\246\347\274\226\347\240\201\344\270\216\350\247\243\347\240\201/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/10.\345\255\227\347\254\246\347\274\226\347\240\201\344\270\216\350\247\243\347\240\201/config.json" index 6822bf3..2937fbe 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/10.\345\255\227\347\254\246\347\274\226\347\240\201\344\270\216\350\247\243\347\240\201/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/10.\345\255\227\347\254\246\347\274\226\347\240\201\344\270\216\350\247\243\347\240\201/config.json" @@ -8,9 +8,13 @@ "理解内码和字节码的概念": { "keywords": [], "children": [], - "node_id": "python-4-203" + "node_id": "python-4-203", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-26" + "node_id": "python-3-26", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/2.\344\270\211\345\205\203\350\241\250\350\276\276\345\274\217/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/2.\344\270\211\345\205\203\350\241\250\350\276\276\345\274\217/config.json" index 04a74ac..c540c71 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/2.\344\270\211\345\205\203\350\241\250\350\276\276\345\274\217/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/2.\344\270\211\345\205\203\350\241\250\350\276\276\345\274\217/config.json" @@ -9,107 +9,141 @@ "算术转换": { "keywords": [], "children": [], - "node_id": "python-4-156" + "node_id": "python-4-156", + "keywords_must": [], + "keywords_forbid": [] } }, { "原子": { "keywords": [], "children": [], - "node_id": "python-4-157" + "node_id": "python-4-157", + "keywords_must": [], + "keywords_forbid": [] } }, { "原型": { "keywords": [], "children": [], - "node_id": "python-4-158" + "node_id": "python-4-158", + "keywords_must": [], + "keywords_forbid": [] } }, { "await表达式": { "keywords": [], "children": [], - "node_id": "python-4-159" + "node_id": "python-4-159", + "keywords_must": [], + "keywords_forbid": [] } }, { "幂运算符": { "keywords": [], "children": [], - "node_id": "python-4-160" + "node_id": "python-4-160", + "keywords_must": [], + "keywords_forbid": [] } }, { "一元算术和位运算": { "keywords": [], "children": [], - "node_id": "python-4-161" + "node_id": "python-4-161", + "keywords_must": [], + "keywords_forbid": [] } }, { "二元算术运算符": { "keywords": [], "children": [], - "node_id": "python-4-162" + "node_id": "python-4-162", + "keywords_must": [], + "keywords_forbid": [] } }, { "移位运算": { "keywords": [], "children": [], - "node_id": "python-4-163" + "node_id": "python-4-163", + "keywords_must": [], + "keywords_forbid": [] } }, { "比较运算": { "keywords": [], "children": [], - "node_id": "python-4-164" + "node_id": "python-4-164", + "keywords_must": [], + "keywords_forbid": [] } }, { "布尔运算": { "keywords": [], "children": [], - "node_id": "python-4-165" + "node_id": "python-4-165", + "keywords_must": [], + "keywords_forbid": [] } }, { "赋值表达式": { "keywords": [], "children": [], - "node_id": "python-4-166" + "node_id": "python-4-166", + "keywords_must": [], + "keywords_forbid": [] } }, { "条件表达式": { "keywords": [], "children": [], - "node_id": "python-4-167" + "node_id": "python-4-167", + "keywords_must": [], + "keywords_forbid": [] } }, { "表达式列表": { "keywords": [], "children": [], - "node_id": "python-4-168" + "node_id": "python-4-168", + "keywords_must": [], + "keywords_forbid": [] } }, { "求值顺序": { "keywords": [], "children": [], - "node_id": "python-4-169" + "node_id": "python-4-169", + "keywords_must": [], + "keywords_forbid": [] } }, { "运算符优先级": { "keywords": [], "children": [], - "node_id": "python-4-170" + "node_id": "python-4-170", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-18" + "node_id": "python-3-18", + "keywords_must": [ + "三元表达式" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/3.\346\226\255\350\250\200/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/3.\346\226\255\350\250\200/config.json" index 30cd1b4..6a7b108 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/3.\346\226\255\350\250\200/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/3.\346\226\255\350\250\200/config.json" @@ -4,5 +4,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-19" + "node_id": "python-3-19", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/4.with-as/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/4.with-as/config.json" index 270ea3f..789c096 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/4.with-as/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/4.with-as/config.json" @@ -5,5 +5,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-20" + "node_id": "python-3-20", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/5.\345\274\202\345\270\270\346\215\225\350\216\267\351\242\204\345\244\204\347\220\206/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/5.\345\274\202\345\270\270\346\215\225\350\216\267\351\242\204\345\244\204\347\220\206/config.json" index 3f4e853..62f822d 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/5.\345\274\202\345\270\270\346\215\225\350\216\267\351\242\204\345\244\204\347\220\206/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/5.\345\274\202\345\270\270\346\215\225\350\216\267\351\242\204\345\244\204\347\220\206/config.json" @@ -8,16 +8,22 @@ "try-catch-finally": { "keywords": [], "children": [], - "node_id": "python-4-171" + "node_id": "python-4-171", + "keywords_must": [], + "keywords_forbid": [] } }, { "异常捕获": { "keywords": [], "children": [], - "node_id": "python-4-172" + "node_id": "python-4-172", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-21" + "node_id": "python-3-21", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/6.\345\255\227\347\254\246\344\270\262\346\226\271\346\263\225/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/6.\345\255\227\347\254\246\344\270\262\346\226\271\346\263\225/config.json" index d5e053b..e4d0a09 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/6.\345\255\227\347\254\246\344\270\262\346\226\271\346\263\225/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/6.\345\255\227\347\254\246\344\270\262\346\226\271\346\263\225/config.json" @@ -8,79 +8,103 @@ "find": { "keywords": [], "children": [], - "node_id": "python-4-173" + "node_id": "python-4-173", + "keywords_must": [], + "keywords_forbid": [] } }, { "index": { "keywords": [], "children": [], - "node_id": "python-4-174" + "node_id": "python-4-174", + "keywords_must": [], + "keywords_forbid": [] } }, { "join": { "keywords": [], "children": [], - "node_id": "python-4-175" + "node_id": "python-4-175", + "keywords_must": [], + "keywords_forbid": [] } }, { "lower": { "keywords": [], "children": [], - "node_id": "python-4-176" + "node_id": "python-4-176", + "keywords_must": [], + "keywords_forbid": [] } }, { "replace": { "keywords": [], "children": [], - "node_id": "python-4-177" + "node_id": "python-4-177", + "keywords_must": [], + "keywords_forbid": [] } }, { "split": { "keywords": [], "children": [], - "node_id": "python-4-178" + "node_id": "python-4-178", + "keywords_must": [], + "keywords_forbid": [] } }, { "strip": { "keywords": [], "children": [], - "node_id": "python-4-179" + "node_id": "python-4-179", + "keywords_must": [], + "keywords_forbid": [] } }, { "translate": { "keywords": [], "children": [], - "node_id": "python-4-180" + "node_id": "python-4-180", + "keywords_must": [], + "keywords_forbid": [] } }, { "upper": { "keywords": [], "children": [], - "node_id": "python-4-181" + "node_id": "python-4-181", + "keywords_must": [], + "keywords_forbid": [] } }, { "center": { "keywords": [], "children": [], - "node_id": "python-4-182" + "node_id": "python-4-182", + "keywords_must": [], + "keywords_forbid": [] } }, { "判断字符串是否满足特定的条件": { "keywords": [], "children": [], - "node_id": "python-4-183" + "node_id": "python-4-183", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-22" + "node_id": "python-3-22", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/7.lambda\345\207\275\346\225\260/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/7.lambda\345\207\275\346\225\260/config.json" index d724db2..eddf4de 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/7.lambda\345\207\275\346\225\260/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/7.lambda\345\207\275\346\225\260/config.json" @@ -12,18 +12,24 @@ "迭代器协议": { "keywords": [], "children": [], - "node_id": "python-5-116" + "node_id": "python-5-116", + "keywords_must": [], + "keywords_forbid": [] } }, { "从迭代器创建序列": { "keywords": [], "children": [], - "node_id": "python-5-117" + "node_id": "python-5-117", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-184" + "node_id": "python-4-184", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -34,55 +40,73 @@ "创建生成器": { "keywords": [], "children": [], - "node_id": "python-5-118" + "node_id": "python-5-118", + "keywords_must": [], + "keywords_forbid": [] } }, { "递归式生成器": { "keywords": [], "children": [], - "node_id": "python-5-119" + "node_id": "python-5-119", + "keywords_must": [], + "keywords_forbid": [] } }, { "通用生成器": { "keywords": [], "children": [], - "node_id": "python-5-120" + "node_id": "python-5-120", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成器的方法": { "keywords": [], "children": [], - "node_id": "python-5-121" + "node_id": "python-5-121", + "keywords_must": [], + "keywords_forbid": [] } }, { "模拟生成器": { "keywords": [], "children": [], - "node_id": "python-5-122" + "node_id": "python-5-122", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-185" + "node_id": "python-4-185", + "keywords_must": [], + "keywords_forbid": [] } }, { "装饰器": { "keywords": [], "children": [], - "node_id": "python-4-186" + "node_id": "python-4-186", + "keywords_must": [], + "keywords_forbid": [] } }, { "闭包": { "keywords": [], "children": [], - "node_id": "python-4-187" + "node_id": "python-4-187", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-23" + "node_id": "python-3-23", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/8.\346\226\207\344\273\266/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/8.\346\226\207\344\273\266/config.json" index 804a91a..eeb5031 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/8.\346\226\207\344\273\266/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/8.\346\226\207\344\273\266/config.json" @@ -9,14 +9,18 @@ "打开文件": { "keywords": [], "children": [], - "node_id": "python-4-188" + "node_id": "python-4-188", + "keywords_must": [], + "keywords_forbid": [] } }, { "文件基本方法": { "keywords": [], "children": [], - "node_id": "python-4-189" + "node_id": "python-4-189", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -27,39 +31,51 @@ "每次一个字符(或字节)": { "keywords": [], "children": [], - "node_id": "python-5-123" + "node_id": "python-5-123", + "keywords_must": [], + "keywords_forbid": [] } }, { "每次一行": { "keywords": [], "children": [], - "node_id": "python-5-124" + "node_id": "python-5-124", + "keywords_must": [], + "keywords_forbid": [] } }, { "读取所有内容": { "keywords": [], "children": [], - "node_id": "python-5-125" + "node_id": "python-5-125", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用fileinput实现延迟行迭代": { "keywords": [], "children": [], - "node_id": "python-5-126" + "node_id": "python-5-126", + "keywords_must": [], + "keywords_forbid": [] } }, { "文件迭代器": { "keywords": [], "children": [], - "node_id": "python-5-127" + "node_id": "python-5-127", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-190" + "node_id": "python-4-190", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -70,41 +86,55 @@ "读取和写入": { "keywords": [], "children": [], - "node_id": "python-5-128" + "node_id": "python-5-128", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用管道重定向输出": { "keywords": [], "children": [], - "node_id": "python-5-129" + "node_id": "python-5-129", + "keywords_must": [], + "keywords_forbid": [] } }, { "读取和写入行": { "keywords": [], "children": [], - "node_id": "python-5-130" + "node_id": "python-5-130", + "keywords_must": [], + "keywords_forbid": [] } }, { "关闭文件": { "keywords": [], "children": [], - "node_id": "python-5-131" + "node_id": "python-5-131", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用文件的基本方法": { "keywords": [], "children": [], - "node_id": "python-5-132" + "node_id": "python-5-132", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-191" + "node_id": "python-4-191", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-24" + "node_id": "python-3-24", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/9.\345\270\270\347\224\250\346\240\207\345\207\206\345\272\223/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/9.\345\270\270\347\224\250\346\240\207\345\207\206\345\272\223/config.json" index cbed214..bac845f 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/9.\345\270\270\347\224\250\346\240\207\345\207\206\345\272\223/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/9.\345\270\270\347\224\250\346\240\207\345\207\206\345\272\223/config.json" @@ -9,79 +9,103 @@ "datetime": { "keywords": [], "children": [], - "node_id": "python-4-192" + "node_id": "python-4-192", + "keywords_must": [], + "keywords_forbid": [] } }, { "json": { "keywords": [], "children": [], - "node_id": "python-4-193" + "node_id": "python-4-193", + "keywords_must": [], + "keywords_forbid": [] } }, { "math": { "keywords": [], "children": [], - "node_id": "python-4-194" + "node_id": "python-4-194", + "keywords_must": [], + "keywords_forbid": [] } }, { "os": { "keywords": [], "children": [], - "node_id": "python-4-195" + "node_id": "python-4-195", + "keywords_must": [], + "keywords_forbid": [] } }, { "random": { "keywords": [], "children": [], - "node_id": "python-4-196" + "node_id": "python-4-196", + "keywords_must": [], + "keywords_forbid": [] } }, { "re": { "keywords": [], "children": [], - "node_id": "python-4-197" + "node_id": "python-4-197", + "keywords_must": [], + "keywords_forbid": [] } }, { "sys": { "keywords": [], "children": [], - "node_id": "python-4-198" + "node_id": "python-4-198", + "keywords_must": [], + "keywords_forbid": [] } }, { "time": { "keywords": [], "children": [], - "node_id": "python-4-199" + "node_id": "python-4-199", + "keywords_must": [], + "keywords_forbid": [] } }, { "urllib": { "keywords": [], "children": [], - "node_id": "python-4-200" + "node_id": "python-4-200", + "keywords_must": [], + "keywords_forbid": [] } }, { "fileinput": { "keywords": [], "children": [], - "node_id": "python-4-201" + "node_id": "python-4-201", + "keywords_must": [], + "keywords_forbid": [] } }, { "其他有趣的标准模块": { "keywords": [], "children": [], - "node_id": "python-4-202" + "node_id": "python-4-202", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-25" + "node_id": "python-3-25", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/config.json" "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/config.json" index d457d4f..0be1742 100644 --- "a/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/config.json" +++ "b/data/1.python\345\210\235\351\230\266/3.\350\277\233\351\230\266\350\257\255\346\263\225/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-2", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/1.\347\261\273\345\222\214\345\257\271\350\261\241\347\232\204\346\246\202\345\277\265/config.json" "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/1.\347\261\273\345\222\214\345\257\271\350\261\241\347\232\204\346\246\202\345\277\265/config.json" index 4a4caf5..0f39a92 100644 --- "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/1.\347\261\273\345\222\214\345\257\271\350\261\241\347\232\204\346\246\202\345\277\265/config.json" +++ "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/1.\347\261\273\345\222\214\345\257\271\350\261\241\347\232\204\346\246\202\345\277\265/config.json" @@ -4,5 +4,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-27" + "node_id": "python-3-27", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/2.\347\261\273\346\210\220\345\221\230/config.json" "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/2.\347\261\273\346\210\220\345\221\230/config.json" index 1af871a..58d93b5 100644 --- "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/2.\347\261\273\346\210\220\345\221\230/config.json" +++ "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/2.\347\261\273\346\210\220\345\221\230/config.json" @@ -4,5 +4,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-28" + "node_id": "python-3-28", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/3.\351\235\242\345\220\221\345\257\271\350\261\241\344\270\211\350\246\201\347\264\240/config.json" "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/3.\351\235\242\345\220\221\345\257\271\350\261\241\344\270\211\350\246\201\347\264\240/config.json" index bc1487c..5ff7a93 100644 --- "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/3.\351\235\242\345\220\221\345\257\271\350\261\241\344\270\211\350\246\201\347\264\240/config.json" +++ "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/3.\351\235\242\345\220\221\345\257\271\350\261\241\344\270\211\350\246\201\347\264\240/config.json" @@ -10,7 +10,9 @@ "封装": { "keywords": [], "children": [], - "node_id": "python-4-204" + "node_id": "python-4-204", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -21,34 +23,46 @@ "子类的方法__init__": { "keywords": [], "children": [], - "node_id": "python-5-133" + "node_id": "python-5-133", + "keywords_must": [], + "keywords_forbid": [] } }, { "重写父类的方法": { "keywords": [], "children": [], - "node_id": "python-5-134" + "node_id": "python-5-134", + "keywords_must": [], + "keywords_forbid": [] } }, { "模拟实物": { "keywords": [], "children": [], - "node_id": "python-5-135" + "node_id": "python-5-135", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-205" + "node_id": "python-4-205", + "keywords_must": [], + "keywords_forbid": [] } }, { "多态": { "keywords": [], "children": [], - "node_id": "python-4-206" + "node_id": "python-4-206", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-29" + "node_id": "python-3-29", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/4.\345\210\233\345\273\272\347\261\273/config.json" "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/4.\345\210\233\345\273\272\347\261\273/config.json" index 994c33d..582bef9 100644 --- "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/4.\345\210\233\345\273\272\347\261\273/config.json" +++ "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/4.\345\210\233\345\273\272\347\261\273/config.json" @@ -4,5 +4,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-30" + "node_id": "python-3-30", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/5.\346\212\275\350\261\241\347\261\273/config.json" "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/5.\346\212\275\350\261\241\347\261\273/config.json" index 10f3f6a..21b9167 100644 --- "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/5.\346\212\275\350\261\241\347\261\273/config.json" +++ "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/5.\346\212\275\350\261\241\347\261\273/config.json" @@ -4,5 +4,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-31" + "node_id": "python-3-31", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/6.\350\256\277\351\227\256\351\231\220\345\210\266/config.json" "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/6.\350\256\277\351\227\256\351\231\220\345\210\266/config.json" index 84f269d..7af77f8 100644 --- "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/6.\350\256\277\351\227\256\351\231\220\345\210\266/config.json" +++ "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/6.\350\256\277\351\227\256\351\231\220\345\210\266/config.json" @@ -5,5 +5,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-32" + "node_id": "python-3-32", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/7.\350\216\267\345\217\226\345\257\271\350\261\241\344\277\241\346\201\257/config.json" "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/7.\350\216\267\345\217\226\345\257\271\350\261\241\344\277\241\346\201\257/config.json" index e212756..45bd463 100644 --- "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/7.\350\216\267\345\217\226\345\257\271\350\261\241\344\277\241\346\201\257/config.json" +++ "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/7.\350\216\267\345\217\226\345\257\271\350\261\241\344\277\241\346\201\257/config.json" @@ -4,5 +4,7 @@ ], "keywords": [], "children": [], - "node_id": "python-3-33" + "node_id": "python-3-33", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/config.json" "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/config.json" index 54db4c2..d2b82b9 100644 --- "a/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/config.json" +++ "b/data/1.python\345\210\235\351\230\266/4.\351\235\242\345\220\221\345\257\271\350\261\241\347\274\226\347\250\213/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-3", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/1.python\345\210\235\351\230\266/config.json" "b/data/1.python\345\210\235\351\230\266/config.json" index 481038b..87a3e7a 100644 --- "a/data/1.python\345\210\235\351\230\266/config.json" +++ "b/data/1.python\345\210\235\351\230\266/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-1-0", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/1.\350\247\243\346\236\220\345\221\275\344\273\244\350\241\214\345\217\202\346\225\260/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/1.\350\247\243\346\236\220\345\221\275\344\273\244\350\241\214\345\217\202\346\225\260/config.json" index 198aff7..d27badb 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/1.\350\247\243\346\236\220\345\221\275\344\273\244\350\241\214\345\217\202\346\225\260/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/1.\350\247\243\346\236\220\345\221\275\344\273\244\350\241\214\345\217\202\346\225\260/config.json" @@ -5,5 +5,7 @@ ], "keywords": [], "children": [], - "node_id": "python-insert-4" + "node_id": "python-insert-4", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/2.\346\227\266\351\227\264\346\227\245\346\234\237\345\244\204\347\220\206/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/2.\346\227\266\351\227\264\346\227\245\346\234\237\345\244\204\347\220\206/config.json" index ef5172a..6c78a6b 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/2.\346\227\266\351\227\264\346\227\245\346\234\237\345\244\204\347\220\206/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/2.\346\227\266\351\227\264\346\227\245\346\234\237\345\244\204\347\220\206/config.json" @@ -10,16 +10,22 @@ "time": { "keywords": [], "children": [], - "node_id": "python-4-752" + "node_id": "python-4-752", + "keywords_must": [], + "keywords_forbid": [] } }, { "datetime": { "keywords": [], "children": [], - "node_id": "python-4-753" + "node_id": "python-4-753", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-128" + "node_id": "python-3-128", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/3.\346\225\260\346\215\256\346\226\207\344\273\266\350\257\273\345\206\231/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/3.\346\225\260\346\215\256\346\226\207\344\273\266\350\257\273\345\206\231/config.json" index b3c978f..5895b30 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/3.\346\225\260\346\215\256\346\226\207\344\273\266\350\257\273\345\206\231/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/3.\346\225\260\346\215\256\346\226\207\344\273\266\350\257\273\345\206\231/config.json" @@ -13,9 +13,13 @@ "excel/csv/hdf/netCDF": { "keywords": [], "children": [], - "node_id": "python-4-754" + "node_id": "python-4-754", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-129" + "node_id": "python-3-129", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/4.\346\225\260\346\215\256\345\272\223\346\223\215\344\275\234/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/4.\346\225\260\346\215\256\345\272\223\346\223\215\344\275\234/config.json" index e35d04b..fb553cf 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/4.\346\225\260\346\215\256\345\272\223\346\223\215\344\275\234/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/4.\346\225\260\346\215\256\345\272\223\346\223\215\344\275\234/config.json" @@ -18,21 +18,27 @@ "数据库概述": { "keywords": [], "children": [], - "node_id": "python-4-755" + "node_id": "python-4-755", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据库安装配置": { "keywords": [], "children": [], - "node_id": "python-4-756" + "node_id": "python-4-756", + "keywords_must": [], + "keywords_forbid": [] } }, { "SQL语句": { "keywords": [], "children": [], - "node_id": "python-4-757" + "node_id": "python-4-757", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -43,18 +49,24 @@ "创建数据库文件": { "keywords": [], "children": [], - "node_id": "python-5-409" + "node_id": "python-5-409", + "keywords_must": [], + "keywords_forbid": [] } }, { "操作SQLite": { "keywords": [], "children": [], - "node_id": "python-5-410" + "node_id": "python-5-410", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-758" + "node_id": "python-4-758", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -65,39 +77,51 @@ "下载安装MySQL": { "keywords": [], "children": [], - "node_id": "python-5-411" + "node_id": "python-5-411", + "keywords_must": [], + "keywords_forbid": [] } }, { "连接数据库": { "keywords": [], "children": [], - "node_id": "python-5-412" + "node_id": "python-5-412", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建数据表": { "keywords": [], "children": [], - "node_id": "python-5-413" + "node_id": "python-5-413", + "keywords_must": [], + "keywords_forbid": [] } }, { "操作MySQL数据表": { "keywords": [], "children": [], - "node_id": "python-5-414" + "node_id": "python-5-414", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-759" + "node_id": "python-4-759", + "keywords_must": [], + "keywords_forbid": [] } }, { "MongoDB": { "keywords": [], "children": [], - "node_id": "python-4-760" + "node_id": "python-4-760", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -108,20 +132,28 @@ "连接对象": { "keywords": [], "children": [], - "node_id": "python-5-415" + "node_id": "python-5-415", + "keywords_must": [], + "keywords_forbid": [] } }, { "游标对象": { "keywords": [], "children": [], - "node_id": "python-5-416" + "node_id": "python-5-416", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-761" + "node_id": "python-4-761", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-130" + "node_id": "python-3-130", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/5.\346\223\215\344\275\234\347\263\273\347\273\237\345\222\214\347\216\257\345\242\203/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/5.\346\223\215\344\275\234\347\263\273\347\273\237\345\222\214\347\216\257\345\242\203/config.json" index daaff23..5dafcc4 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/5.\346\223\215\344\275\234\347\263\273\347\273\237\345\222\214\347\216\257\345\242\203/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/5.\346\223\215\344\275\234\347\263\273\347\273\237\345\222\214\347\216\257\345\242\203/config.json" @@ -9,9 +9,13 @@ "OS/Sys": { "keywords": [], "children": [], - "node_id": "python-4-762" + "node_id": "python-4-762", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-131" + "node_id": "python-3-131", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/6.\346\272\220\347\240\201\346\211\223\345\214\205/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/6.\346\272\220\347\240\201\346\211\223\345\214\205/config.json" index 6e08bed..3c184b4 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/6.\346\272\220\347\240\201\346\211\223\345\214\205/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/6.\346\272\220\347\240\201\346\211\223\345\214\205/config.json" @@ -8,9 +8,13 @@ "pyinstaller": { "keywords": [], "children": [], - "node_id": "python-4-769" + "node_id": "python-4-769", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-133" + "node_id": "python-3-133", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/7.\347\275\221\347\273\234\347\274\226\347\250\213/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/7.\347\275\221\347\273\234\347\274\226\347\250\213/config.json" index ad896a2..f8ec932 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/7.\347\275\221\347\273\234\347\274\226\347\250\213/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/7.\347\275\221\347\273\234\347\274\226\347\250\213/config.json" @@ -12,25 +12,33 @@ "TCP/IP简介": { "keywords": [], "children": [], - "node_id": "python-5-1539" + "node_id": "python-5-1539", + "keywords_must": [], + "keywords_forbid": [] } }, { "UDP简介": { "keywords": [], "children": [], - "node_id": "python-5-1540" + "node_id": "python-5-1540", + "keywords_must": [], + "keywords_forbid": [] } }, { "Socket简介": { "keywords": [], "children": [], - "node_id": "python-5-1541" + "node_id": "python-5-1541", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1484" + "node_id": "python-4-1484", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -41,25 +49,33 @@ "创建TCP服务器": { "keywords": [], "children": [], - "node_id": "python-5-1542" + "node_id": "python-5-1542", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建TCP客户端": { "keywords": [], "children": [], - "node_id": "python-5-1543" + "node_id": "python-5-1543", + "keywords_must": [], + "keywords_forbid": [] } }, { "执行TCP服务器和客户端": { "keywords": [], "children": [], - "node_id": "python-5-1544" + "node_id": "python-5-1544", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1485" + "node_id": "python-4-1485", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -70,27 +86,40 @@ "创建UDP服务器": { "keywords": [], "children": [], - "node_id": "python-5-1545" + "node_id": "python-5-1545", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建UDP客户端": { "keywords": [], "children": [], - "node_id": "python-5-1546" + "node_id": "python-5-1546", + "keywords_must": [], + "keywords_forbid": [] } }, { "执行UDP服务器和客户端": { "keywords": [], "children": [], - "node_id": "python-5-1547" + "node_id": "python-5-1547", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1486" + "node_id": "python-4-1486", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-134" + "node_id": "python-3-134", + "keywords_must": [ + "网络编程", + "Socket" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/8.\345\217\221\351\200\201\351\202\256\344\273\266/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/8.\345\217\221\351\200\201\351\202\256\344\273\266/config.json" index 5f4b7e2..7f71581 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/8.\345\217\221\351\200\201\351\202\256\344\273\266/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/8.\345\217\221\351\200\201\351\202\256\344\273\266/config.json" @@ -8,9 +8,13 @@ "smtplib": { "keywords": [], "children": [], - "node_id": "python-4-788" + "node_id": "python-4-788", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-135" + "node_id": "python-3-135", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/config.json" "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/config.json" index 95fc794..3b80afc 100644 --- "a/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/config.json" +++ "b/data/2.python\344\270\255\351\230\266/1.\345\237\272\346\234\254\346\212\200\350\203\275/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-5", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/1.Web\345\274\200\345\217\221\345\237\272\347\241\200\347\237\245\350\257\206/config.json" "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/1.Web\345\274\200\345\217\221\345\237\272\347\241\200\347\237\245\350\257\206/config.json" index 92fedda..0ca1b6c 100644 --- "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/1.Web\345\274\200\345\217\221\345\237\272\347\241\200\347\237\245\350\257\206/config.json" +++ "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/1.Web\345\274\200\345\217\221\345\237\272\347\241\200\347\237\245\350\257\206/config.json" @@ -12,30 +12,40 @@ "HTML/HTML5/CSS": { "keywords": [], "children": [], - "node_id": "python-4-789" + "node_id": "python-4-789", + "keywords_must": [], + "keywords_forbid": [] } }, { "前端数据库和后台": { "keywords": [], "children": [], - "node_id": "python-4-790" + "node_id": "python-4-790", + "keywords_must": [], + "keywords_forbid": [] } }, { "MVC架构": { "keywords": [], "children": [], - "node_id": "python-4-791" + "node_id": "python-4-791", + "keywords_must": [], + "keywords_forbid": [] } }, { "REST和Ajax": { "keywords": [], "children": [], - "node_id": "python-4-792" + "node_id": "python-4-792", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-136" + "node_id": "python-3-136", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/2. Django/config.json" "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/2. Django/config.json" index c6cd95b..7a1317b 100644 --- "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/2. Django/config.json" +++ "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/2. Django/config.json" @@ -8,84 +8,108 @@ "Django简介": { "keywords": [], "children": [], - "node_id": "python-4-793" + "node_id": "python-4-793", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django安装配置": { "keywords": [], "children": [], - "node_id": "python-4-794" + "node_id": "python-4-794", + "keywords_must": [], + "keywords_forbid": [] } }, { "DTL(Django Template Language)": { "keywords": [], "children": [], - "node_id": "python-4-795" + "node_id": "python-4-795", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django路由定义": { "keywords": [], "children": [], - "node_id": "python-4-796" + "node_id": "python-4-796", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django请求数据解析": { "keywords": [], "children": [], - "node_id": "python-4-797" + "node_id": "python-4-797", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django数据库操作": { "keywords": [], "children": [], - "node_id": "python-4-798" + "node_id": "python-4-798", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django提交表单": { "keywords": [], "children": [], - "node_id": "python-4-799" + "node_id": "python-4-799", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django Rest Framework": { "keywords": [], "children": [], - "node_id": "python-4-800" + "node_id": "python-4-800", + "keywords_must": [], + "keywords_forbid": [] } }, { "部署日志与安全": { "keywords": [], "children": [], - "node_id": "python-4-801" + "node_id": "python-4-801", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django开发案例": { "keywords": [], "children": [], - "node_id": "python-4-802" + "node_id": "python-4-802", + "keywords_must": [], + "keywords_forbid": [] } }, { "Web框架": { "keywords": [], "children": [], - "node_id": "python-4-803" + "node_id": "python-4-803", + "keywords_must": [], + "keywords_forbid": [] } }, { "“Hello World”应用(一个博客)": { "keywords": [], "children": [], - "node_id": "python-4-804" + "node_id": "python-4-804", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -96,11 +120,15 @@ "设置数据库": { "keywords": [], "children": [], - "node_id": "python-5-447" + "node_id": "python-5-447", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-805" + "node_id": "python-4-805", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -111,18 +139,24 @@ "在Django中使用Python shell": { "keywords": [], "children": [], - "node_id": "python-5-448" + "node_id": "python-5-448", + "keywords_must": [], + "keywords_forbid": [] } }, { "测试数据模型": { "keywords": [], "children": [], - "node_id": "python-5-449" + "node_id": "python-5-449", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-806" + "node_id": "python-4-806", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -133,18 +167,24 @@ "设置admin": { "keywords": [], "children": [], - "node_id": "python-5-450" + "node_id": "python-5-450", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用admin": { "keywords": [], "children": [], - "node_id": "python-5-451" + "node_id": "python-5-451", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-807" + "node_id": "python-4-807", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -155,32 +195,42 @@ "创建模板": { "keywords": [], "children": [], - "node_id": "python-5-452" + "node_id": "python-5-452", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建URL模式": { "keywords": [], "children": [], - "node_id": "python-5-453" + "node_id": "python-5-453", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建视图函数": { "keywords": [], "children": [], - "node_id": "python-5-454" + "node_id": "python-5-454", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-808" + "node_id": "python-4-808", + "keywords_must": [], + "keywords_forbid": [] } }, { "改进输出": { "keywords": [], "children": [], - "node_id": "python-4-809" + "node_id": "python-4-809", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -191,25 +241,33 @@ "添加URLconf项": { "keywords": [], "children": [], - "node_id": "python-5-455" + "node_id": "python-5-455", + "keywords_must": [], + "keywords_forbid": [] } }, { "视图:处理用户输入": { "keywords": [], "children": [], - "node_id": "python-5-456" + "node_id": "python-5-456", + "keywords_must": [], + "keywords_forbid": [] } }, { "跨站点请求伪造": { "keywords": [], "children": [], - "node_id": "python-5-457" + "node_id": "python-5-457", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-810" + "node_id": "python-4-810", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -220,46 +278,60 @@ "Django表单简介": { "keywords": [], "children": [], - "node_id": "python-5-458" + "node_id": "python-5-458", + "keywords_must": [], + "keywords_forbid": [] } }, { "模型表单示例": { "keywords": [], "children": [], - "node_id": "python-5-459" + "node_id": "python-5-459", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用ModelForm来生成HTML表单": { "keywords": [], "children": [], - "node_id": "python-5-460" + "node_id": "python-5-460", + "keywords_must": [], + "keywords_forbid": [] } }, { "处理ModelForm数据": { "keywords": [], "children": [], - "node_id": "python-5-461" + "node_id": "python-5-461", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-811" + "node_id": "python-4-811", + "keywords_must": [], + "keywords_forbid": [] } }, { "视图进阶": { "keywords": [], "children": [], - "node_id": "python-4-812" + "node_id": "python-4-812", + "keywords_must": [], + "keywords_forbid": [] } }, { "*改善外观": { "keywords": [], "children": [], - "node_id": "python-4-813" + "node_id": "python-4-813", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -270,48 +342,66 @@ "安装Twython库": { "keywords": [], "children": [], - "node_id": "python-5-462" + "node_id": "python-5-462", + "keywords_must": [], + "keywords_forbid": [] } }, { "URL结构": { "keywords": [], "children": [], - "node_id": "python-5-463" + "node_id": "python-5-463", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据模型": { "keywords": [], "children": [], - "node_id": "python-5-464" + "node_id": "python-5-464", + "keywords_must": [], + "keywords_forbid": [] } }, { "提交新推文以便审核": { "keywords": [], "children": [], - "node_id": "python-5-465" + "node_id": "python-5-465", + "keywords_must": [], + "keywords_forbid": [] } }, { "审核推文": { "keywords": [], "children": [], - "node_id": "python-5-466" + "node_id": "python-5-466", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-814" + "node_id": "python-4-814", + "keywords_must": [], + "keywords_forbid": [] } }, { "资源": { "keywords": [], "children": [], - "node_id": "python-4-815" + "node_id": "python-4-815", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-137" + "node_id": "python-3-137", + "keywords_must": [ + "django" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/3. Tornado/config.json" "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/3. Tornado/config.json" index 94ce40c..28d8b1a 100644 --- "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/3. Tornado/config.json" +++ "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/3. Tornado/config.json" @@ -8,65 +8,87 @@ "Tornado简介": { "keywords": [], "children": [], - "node_id": "python-4-816" + "node_id": "python-4-816", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado安装配置": { "keywords": [], "children": [], - "node_id": "python-4-817" + "node_id": "python-4-817", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado提交表单": { "keywords": [], "children": [], - "node_id": "python-4-818" + "node_id": "python-4-818", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado模板": { "keywords": [], "children": [], - "node_id": "python-4-819" + "node_id": "python-4-819", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado数据库操作": { "keywords": [], "children": [], - "node_id": "python-4-820" + "node_id": "python-4-820", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado异步Web服务": { "keywords": [], "children": [], - "node_id": "python-4-821" + "node_id": "python-4-821", + "keywords_must": [], + "keywords_forbid": [] } }, { "外部服务认证(auth)": { "keywords": [], "children": [], - "node_id": "python-4-822" + "node_id": "python-4-822", + "keywords_must": [], + "keywords_forbid": [] } }, { "部署日志与安全": { "keywords": [], "children": [], - "node_id": "python-4-823" + "node_id": "python-4-823", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado开发案例": { "keywords": [], "children": [], - "node_id": "python-4-824" + "node_id": "python-4-824", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-138" + "node_id": "python-3-138", + "keywords_must": [ + "tornado" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/4. Flask/config.json" "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/4. Flask/config.json" index ccb6d10..5b1a6f9 100644 --- "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/4. Flask/config.json" +++ "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/4. Flask/config.json" @@ -16,46 +16,60 @@ "创建应用目录": { "keywords": [], "children": [], - "node_id": "python-6-56" + "node_id": "python-6-56", + "keywords_must": [], + "keywords_forbid": [] } }, { "虚拟环境": { "keywords": [], "children": [], - "node_id": "python-6-57" + "node_id": "python-6-57", + "keywords_must": [], + "keywords_forbid": [] } }, { "在Python 3中创建虚拟环境": { "keywords": [], "children": [], - "node_id": "python-6-58" + "node_id": "python-6-58", + "keywords_must": [], + "keywords_forbid": [] } }, { "在Python 2中创建虚拟环境": { "keywords": [], "children": [], - "node_id": "python-6-59" + "node_id": "python-6-59", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用虚拟环境": { "keywords": [], "children": [], - "node_id": "python-6-60" + "node_id": "python-6-60", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用pip安装Python包": { "keywords": [], "children": [], - "node_id": "python-6-61" + "node_id": "python-6-61", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-467" + "node_id": "python-5-467", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -66,49 +80,63 @@ "初始化": { "keywords": [], "children": [], - "node_id": "python-6-62" + "node_id": "python-6-62", + "keywords_must": [], + "keywords_forbid": [] } }, { "路由和视图函数": { "keywords": [], "children": [], - "node_id": "python-6-63" + "node_id": "python-6-63", + "keywords_must": [], + "keywords_forbid": [] } }, { "一个完整的应用": { "keywords": [], "children": [], - "node_id": "python-6-64" + "node_id": "python-6-64", + "keywords_must": [], + "keywords_forbid": [] } }, { "Web开发服务器": { "keywords": [], "children": [], - "node_id": "python-6-65" + "node_id": "python-6-65", + "keywords_must": [], + "keywords_forbid": [] } }, { "动态路由": { "keywords": [], "children": [], - "node_id": "python-6-66" + "node_id": "python-6-66", + "keywords_must": [], + "keywords_forbid": [] } }, { "调试模式": { "keywords": [], "children": [], - "node_id": "python-6-67" + "node_id": "python-6-67", + "keywords_must": [], + "keywords_forbid": [] } }, { "命令行选项": { "keywords": [], "children": [], - "node_id": "python-6-68" + "node_id": "python-6-68", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -119,14 +147,18 @@ "应用和请求上下文": { "keywords": [], "children": [], - "node_id": "python-7-15" + "node_id": "python-7-15", + "keywords_must": [], + "keywords_forbid": [] } }, { "请求分派": { "keywords": [], "children": [], - "node_id": "python-7-16" + "node_id": "python-7-16", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -137,47 +169,63 @@ "对象显示": { "keywords": [], "children": [], - "node_id": "python-8-0" + "node_id": "python-8-0", + "keywords_must": [], + "keywords_forbid": [] } }, { "有效创建大量对象": { "keywords": [], "children": [], - "node_id": "python-8-1" + "node_id": "python-8-1", + "keywords_must": [], + "keywords_forbid": [] } }, { "由字符串调用对象": { "keywords": [], "children": [], - "node_id": "python-8-2" + "node_id": "python-8-2", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-7-17" + "node_id": "python-7-17", + "keywords_must": [], + "keywords_forbid": [] } }, { "请求钩子": { "keywords": [], "children": [], - "node_id": "python-7-18" + "node_id": "python-7-18", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-69" + "node_id": "python-6-69", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask扩展": { "keywords": [], "children": [], - "node_id": "python-6-70" + "node_id": "python-6-70", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-468" + "node_id": "python-5-468", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -192,7 +240,9 @@ "渲染模板": { "keywords": [], "children": [], - "node_id": "python-7-19" + "node_id": "python-7-19", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -203,68 +253,90 @@ "匿名函数捕获变量值": { "keywords": [], "children": [], - "node_id": "python-8-3" + "node_id": "python-8-3", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问闭包中定义的变量": { "keywords": [], "children": [], - "node_id": "python-8-4" + "node_id": "python-8-4", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-7-20" + "node_id": "python-7-20", + "keywords_must": [], + "keywords_forbid": [] } }, { "控制结构": { "keywords": [], "children": [], - "node_id": "python-7-21" + "node_id": "python-7-21", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-71" + "node_id": "python-6-71", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Flask-Bootstrap集成Bootstrap": { "keywords": [], "children": [], - "node_id": "python-6-72" + "node_id": "python-6-72", + "keywords_must": [], + "keywords_forbid": [] } }, { "自定义错误页面": { "keywords": [], "children": [], - "node_id": "python-6-73" + "node_id": "python-6-73", + "keywords_must": [], + "keywords_forbid": [] } }, { "链接": { "keywords": [], "children": [], - "node_id": "python-6-74" + "node_id": "python-6-74", + "keywords_must": [], + "keywords_forbid": [] } }, { "静态文件": { "keywords": [], "children": [], - "node_id": "python-6-75" + "node_id": "python-6-75", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Flask-Moment本地化日期和时间": { "keywords": [], "children": [], - "node_id": "python-6-76" + "node_id": "python-6-76", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-469" + "node_id": "python-5-469", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -275,46 +347,60 @@ "配置": { "keywords": [], "children": [], - "node_id": "python-6-77" + "node_id": "python-6-77", + "keywords_must": [], + "keywords_forbid": [] } }, { "表单类": { "keywords": [], "children": [], - "node_id": "python-5-1569" + "node_id": "python-5-1569", + "keywords_must": [], + "keywords_forbid": [] } }, { "把表单渲染成HTML": { "keywords": [], "children": [], - "node_id": "python-5-1570" + "node_id": "python-5-1570", + "keywords_must": [], + "keywords_forbid": [] } }, { "在视图函数中处理表单": { "keywords": [], "children": [], - "node_id": "python-6-80" + "node_id": "python-6-80", + "keywords_must": [], + "keywords_forbid": [] } }, { "重定向和用户会话": { "keywords": [], "children": [], - "node_id": "python-6-81" + "node_id": "python-6-81", + "keywords_must": [], + "keywords_forbid": [] } }, { "闪现消息": { "keywords": [], "children": [], - "node_id": "python-6-82" + "node_id": "python-6-82", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-470" + "node_id": "python-5-470", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -325,49 +411,63 @@ "SQL数据库": { "keywords": [], "children": [], - "node_id": "python-6-83" + "node_id": "python-6-83", + "keywords_must": [], + "keywords_forbid": [] } }, { "NoSQL数据库": { "keywords": [], "children": [], - "node_id": "python-6-84" + "node_id": "python-6-84", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用SQL还是NoSQL": { "keywords": [], "children": [], - "node_id": "python-6-85" + "node_id": "python-6-85", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python数据库框架": { "keywords": [], "children": [], - "node_id": "python-6-86" + "node_id": "python-6-86", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Flask-SQLAlchemy管理数据库": { "keywords": [], "children": [], - "node_id": "python-6-87" + "node_id": "python-6-87", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义模型": { "keywords": [], "children": [], - "node_id": "python-6-88" + "node_id": "python-6-88", + "keywords_must": [], + "keywords_forbid": [] } }, { "关系": { "keywords": [], "children": [], - "node_id": "python-6-89" + "node_id": "python-6-89", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -378,53 +478,69 @@ "创建表": { "keywords": [], "children": [], - "node_id": "python-7-22" + "node_id": "python-7-22", + "keywords_must": [], + "keywords_forbid": [] } }, { "插入行": { "keywords": [], "children": [], - "node_id": "python-7-23" + "node_id": "python-7-23", + "keywords_must": [], + "keywords_forbid": [] } }, { "修改行": { "keywords": [], "children": [], - "node_id": "python-7-24" + "node_id": "python-7-24", + "keywords_must": [], + "keywords_forbid": [] } }, { "删除行": { "keywords": [], "children": [], - "node_id": "python-7-25" + "node_id": "python-7-25", + "keywords_must": [], + "keywords_forbid": [] } }, { "查询行": { "keywords": [], "children": [], - "node_id": "python-7-26" + "node_id": "python-7-26", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-90" + "node_id": "python-6-90", + "keywords_must": [], + "keywords_forbid": [] } }, { "在视图函数中操作数据库": { "keywords": [], "children": [], - "node_id": "python-6-91" + "node_id": "python-6-91", + "keywords_must": [], + "keywords_forbid": [] } }, { "集成Python shell": { "keywords": [], "children": [], - "node_id": "python-6-92" + "node_id": "python-6-92", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -435,36 +551,48 @@ "创建迁移仓库": { "keywords": [], "children": [], - "node_id": "python-7-27" + "node_id": "python-7-27", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建迁移脚本": { "keywords": [], "children": [], - "node_id": "python-7-28" + "node_id": "python-7-28", + "keywords_must": [], + "keywords_forbid": [] } }, { "更新数据库": { "keywords": [], "children": [], - "node_id": "python-7-29" + "node_id": "python-7-29", + "keywords_must": [], + "keywords_forbid": [] } }, { "添加几个迁移": { "keywords": [], "children": [], - "node_id": "python-7-30" + "node_id": "python-7-30", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-93" + "node_id": "python-6-93", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-471" + "node_id": "python-5-471", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -475,95 +603,123 @@ "电子邮件系统组件和协议": { "keywords": [], "children": [], - "node_id": "python-6-94" + "node_id": "python-6-94", + "keywords_must": [], + "keywords_forbid": [] } }, { "发送电子邮件": { "keywords": [], "children": [], - "node_id": "python-6-95" + "node_id": "python-6-95", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python和SMTP": { "keywords": [], "children": [], - "node_id": "python-6-96" + "node_id": "python-6-96", + "keywords_must": [], + "keywords_forbid": [] } }, { "smtplib.SMTP类方法": { "keywords": [], "children": [], - "node_id": "python-6-97" + "node_id": "python-6-97", + "keywords_must": [], + "keywords_forbid": [] } }, { "交互式SMTP示例": { "keywords": [], "children": [], - "node_id": "python-6-98" + "node_id": "python-6-98", + "keywords_must": [], + "keywords_forbid": [] } }, { "SMTP的其他内容": { "keywords": [], "children": [], - "node_id": "python-6-99" + "node_id": "python-6-99", + "keywords_must": [], + "keywords_forbid": [] } }, { "接收电子邮件": { "keywords": [], "children": [], - "node_id": "python-6-100" + "node_id": "python-6-100", + "keywords_must": [], + "keywords_forbid": [] } }, { "POP和IMAP": { "keywords": [], "children": [], - "node_id": "python-6-101" + "node_id": "python-6-101", + "keywords_must": [], + "keywords_forbid": [] } }, { "交互式POP3示例": { "keywords": [], "children": [], - "node_id": "python-6-102" + "node_id": "python-6-102", + "keywords_must": [], + "keywords_forbid": [] } }, { "poplib.POP3类方法": { "keywords": [], "children": [], - "node_id": "python-6-103" + "node_id": "python-6-103", + "keywords_must": [], + "keywords_forbid": [] } }, { "客户端程序SMTP和POP3示例": { "keywords": [], "children": [], - "node_id": "python-6-104" + "node_id": "python-6-104", + "keywords_must": [], + "keywords_forbid": [] } }, { "交互式IMAP4示例": { "keywords": [], "children": [], - "node_id": "python-6-105" + "node_id": "python-6-105", + "keywords_must": [], + "keywords_forbid": [] } }, { "imaplib.IMAP4类中的常用方法": { "keywords": [], "children": [], - "node_id": "python-6-106" + "node_id": "python-6-106", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-472" + "node_id": "python-5-472", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -574,7 +730,9 @@ "配置选项": { "keywords": [], "children": [], - "node_id": "python-6-107" + "node_id": "python-6-107", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -585,32 +743,42 @@ "使用应用工厂函数": { "keywords": [], "children": [], - "node_id": "python-7-31" + "node_id": "python-7-31", + "keywords_must": [], + "keywords_forbid": [] } }, { "在蓝本中实现应用功能": { "keywords": [], "children": [], - "node_id": "python-7-32" + "node_id": "python-7-32", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-108" + "node_id": "python-6-108", + "keywords_must": [], + "keywords_forbid": [] } }, { "应用脚本": { "keywords": [], "children": [], - "node_id": "python-6-109" + "node_id": "python-6-109", + "keywords_must": [], + "keywords_forbid": [] } }, { "需求文件": { "keywords": [], "children": [], - "node_id": "python-6-110" + "node_id": "python-6-110", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -621,105 +789,141 @@ "blog应用的代码审查": { "keywords": [], "children": [], - "node_id": "python-7-33" + "node_id": "python-7-33", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-111" + "node_id": "python-6-111", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建数据库": { "keywords": [], "children": [], - "node_id": "python-6-112" + "node_id": "python-6-112", + "keywords_must": [], + "keywords_forbid": [] } }, { "运行应用": { "keywords": [], "children": [], - "node_id": "python-6-113" + "node_id": "python-6-113", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-473" + "node_id": "python-5-473", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-825" + "node_id": "python-4-825", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask安装配置": { "keywords": [], "children": [], - "node_id": "python-4-826" + "node_id": "python-4-826", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask实现HTTP请求与响应": { "keywords": [], "children": [], - "node_id": "python-4-827" + "node_id": "python-4-827", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask cookie与session": { "keywords": [], "children": [], - "node_id": "python-4-828" + "node_id": "python-4-828", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask模板": { "keywords": [], "children": [], - "node_id": "python-4-829" + "node_id": "python-4-829", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask提交表单": { "keywords": [], "children": [], - "node_id": "python-4-830" + "node_id": "python-4-830", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask数据库操作": { "keywords": [], "children": [], - "node_id": "python-4-831" + "node_id": "python-4-831", + "keywords_must": [], + "keywords_forbid": [] } }, { "Bootstrap-Flask": { "keywords": [], "children": [], - "node_id": "python-4-832" + "node_id": "python-4-832", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask开发REST Web服务": { "keywords": [], "children": [], - "node_id": "python-4-833" + "node_id": "python-4-833", + "keywords_must": [], + "keywords_forbid": [] } }, { "部署日志与安全": { "keywords": [], "children": [], - "node_id": "python-4-834" + "node_id": "python-4-834", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask开发案例": { "keywords": [], "children": [], - "node_id": "python-4-835" + "node_id": "python-4-835", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-139" + "node_id": "python-3-139", + "keywords_must": [ + "flask" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/config.json" "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/config.json" index 0142293..8c2948c 100644 --- "a/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/config.json" +++ "b/data/2.python\344\270\255\351\230\266/2.Web\345\272\224\347\224\250\345\274\200\345\217\221/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-6", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/1.urllib/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/1.urllib/config.json" index 77035f5..db9eea1 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/1.urllib/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/1.urllib/config.json" @@ -10,23 +10,33 @@ "处理异常": { "keywords": [], "children": [], - "node_id": "python-4-868" + "node_id": "python-4-868", + "keywords_must": [], + "keywords_forbid": [] } }, { "解析链接": { "keywords": [], "children": [], - "node_id": "python-4-869" + "node_id": "python-4-869", + "keywords_must": [], + "keywords_forbid": [] } }, { "分析Robots协议": { "keywords": [], "children": [], - "node_id": "python-4-870" + "node_id": "python-4-870", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-147" + "node_id": "python-3-147", + "keywords_must": [ + "urllib" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/10.\345\212\250\346\200\201\346\270\262\346\237\223\351\241\265\351\235\242\347\210\254\345\217\226/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/10.\345\212\250\346\200\201\346\270\262\346\237\223\351\241\265\351\235\242\347\210\254\345\217\226/config.json" index 70d1b53..85d6d2a 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/10.\345\212\250\346\200\201\346\270\262\346\237\223\351\241\265\351\235\242\347\210\254\345\217\226/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/10.\345\212\250\346\200\201\346\270\262\346\237\223\351\241\265\351\235\242\347\210\254\345\217\226/config.json" @@ -1,28 +1,38 @@ { - "export": ["dynamic_page.json"], + "export": [ + "dynamic_page.json" + ], "keywords": [], "children": [ { "Splash的使用": { "keywords": [], "children": [], - "node_id": "python-4-956" + "node_id": "python-4-956", + "keywords_must": [], + "keywords_forbid": [] } }, { "Splash负载均衡配置": { "keywords": [], "children": [], - "node_id": "python-4-957" + "node_id": "python-4-957", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Selenium爬取淘宝商品": { "keywords": [], "children": [], - "node_id": "python-4-958" + "node_id": "python-4-958", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-166" + "node_id": "python-3-166", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/config.json" index f786015..18ffd85 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/config.json" @@ -1,21 +1,29 @@ { - "export": ["simulate_login.json"], + "export": [ + "simulate_login.json" + ], "keywords": [], "children": [ { "模拟登录并爬取GitHub": { "keywords": [], "children": [], - "node_id": "python-4-968" + "node_id": "python-4-968", + "keywords_must": [], + "keywords_forbid": [] } }, { "Cookies池的搭建": { "keywords": [], "children": [], - "node_id": "python-4-969" + "node_id": "python-4-969", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-169" + "node_id": "python-3-169", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/2.\346\255\243\345\210\231\350\241\250\350\276\276\345\274\217/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/2.\346\255\243\345\210\231\350\241\250\350\276\276\345\274\217/config.json" index 6c9b255..39f996f 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/2.\346\255\243\345\210\231\350\241\250\350\276\276\345\274\217/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/2.\346\255\243\345\210\231\350\241\250\350\276\276\345\274\217/config.json" @@ -11,28 +11,36 @@ "RE(Regular Expression )": { "keywords": [], "children": [], - "node_id": "python-4-871" + "node_id": "python-4-871", + "keywords_must": [], + "keywords_forbid": [] } }, { "基础语法": { "keywords": [], "children": [], - "node_id": "python-4-872" + "node_id": "python-4-872", + "keywords_must": [], + "keywords_forbid": [] } }, { "标签匹配常用规则": { "keywords": [], "children": [], - "node_id": "python-4-873" + "node_id": "python-4-873", + "keywords_must": [], + "keywords_forbid": [] } }, { "简介/动机": { "keywords": [], "children": [], - "node_id": "python-4-874" + "node_id": "python-4-874", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -43,83 +51,109 @@ "使用择一匹配符号匹配多个正则表达式模式": { "keywords": [], "children": [], - "node_id": "python-5-526" + "node_id": "python-5-526", + "keywords_must": [], + "keywords_forbid": [] } }, { "匹配任意单个字符": { "keywords": [], "children": [], - "node_id": "python-5-527" + "node_id": "python-5-527", + "keywords_must": [], + "keywords_forbid": [] } }, { "从字符串起始或者结尾或者单词边界匹配": { "keywords": [], "children": [], - "node_id": "python-5-528" + "node_id": "python-5-528", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建字符集": { "keywords": [], "children": [], - "node_id": "python-5-529" + "node_id": "python-5-529", + "keywords_must": [], + "keywords_forbid": [] } }, { "限定范围和否定": { "keywords": [], "children": [], - "node_id": "python-5-530" + "node_id": "python-5-530", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用闭包操作符实现存在性和频数匹配": { "keywords": [], "children": [], - "node_id": "python-5-531" + "node_id": "python-5-531", + "keywords_must": [], + "keywords_forbid": [] } }, { "表示字符集的特殊字符": { "keywords": [], "children": [], - "node_id": "python-5-532" + "node_id": "python-5-532", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用圆括号指定分组": { "keywords": [], "children": [], - "node_id": "python-5-533" + "node_id": "python-5-533", + "keywords_must": [], + "keywords_forbid": [] } }, { "扩展表示法": { "keywords": [], "children": [], - "node_id": "python-5-534" + "node_id": "python-5-534", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-875" + "node_id": "python-4-875", + "keywords_must": [], + "keywords_forbid": [] } }, { "一些正则表达式示例": { "keywords": [], "children": [], - "node_id": "python-4-876" + "node_id": "python-4-876", + "keywords_must": [], + "keywords_forbid": [] } }, { "更长的正则表达式示例": { "keywords": [], "children": [], - "node_id": "python-4-877" + "node_id": "python-4-877", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-148" + "node_id": "python-3-148", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/3.Beautiful Soup/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/3.Beautiful Soup/config.json" index a653acd..07a1b5d 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/3.Beautiful Soup/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/3.Beautiful Soup/config.json" @@ -10,37 +10,49 @@ "Beautiful Soup简介": { "keywords": [], "children": [], - "node_id": "python-4-878" + "node_id": "python-4-878", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-879" + "node_id": "python-4-879", + "keywords_must": [], + "keywords_forbid": [] } }, { "Beautiful Soup对象": { "keywords": [], "children": [], - "node_id": "python-4-880" + "node_id": "python-4-880", + "keywords_must": [], + "keywords_forbid": [] } }, { "元素定位": { "keywords": [], "children": [], - "node_id": "python-4-881" + "node_id": "python-4-881", + "keywords_must": [], + "keywords_forbid": [] } }, { "文档树遍历与搜索": { "keywords": [], "children": [], - "node_id": "python-4-882" + "node_id": "python-4-882", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-149" + "node_id": "python-3-149", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/4.lxml/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/4.lxml/config.json" index 1954ed3..ea4dc89 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/4.lxml/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/4.lxml/config.json" @@ -10,44 +10,60 @@ "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-883" + "node_id": "python-4-883", + "keywords_must": [], + "keywords_forbid": [] } }, { "lxml.etree": { "keywords": [], "children": [], - "node_id": "python-4-884" + "node_id": "python-4-884", + "keywords_must": [], + "keywords_forbid": [] } }, { "XPath选择器": { "keywords": [], "children": [], - "node_id": "python-4-885" + "node_id": "python-4-885", + "keywords_must": [], + "keywords_forbid": [] } }, { "find/findall": { "keywords": [], "children": [], - "node_id": "python-4-886" + "node_id": "python-4-886", + "keywords_must": [], + "keywords_forbid": [] } }, { "CSS选择器": { "keywords": [], "children": [], - "node_id": "python-4-887" + "node_id": "python-4-887", + "keywords_must": [], + "keywords_forbid": [] } }, { "解析HTML": { "keywords": [], "children": [], - "node_id": "python-4-888" + "node_id": "python-4-888", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-150" + "node_id": "python-3-150", + "keywords_must": [ + "lxml" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/5.requests/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/5.requests/config.json" index fb55835..33249fc 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/5.requests/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/5.requests/config.json" @@ -10,79 +10,105 @@ "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-889" + "node_id": "python-4-889", + "keywords_must": [], + "keywords_forbid": [] } }, { "发送请求与HTTP请求类型": { "keywords": [], "children": [], - "node_id": "python-4-890" + "node_id": "python-4-890", + "keywords_must": [], + "keywords_forbid": [] } }, { "传递URL参数": { "keywords": [], "children": [], - "node_id": "python-4-891" + "node_id": "python-4-891", + "keywords_must": [], + "keywords_forbid": [] } }, { "响应内容": { "keywords": [], "children": [], - "node_id": "python-4-892" + "node_id": "python-4-892", + "keywords_must": [], + "keywords_forbid": [] } }, { "定制请求头": { "keywords": [], "children": [], - "node_id": "python-4-893" + "node_id": "python-4-893", + "keywords_must": [], + "keywords_forbid": [] } }, { "响应状态码": { "keywords": [], "children": [], - "node_id": "python-4-894" + "node_id": "python-4-894", + "keywords_must": [], + "keywords_forbid": [] } }, { "Cookie": { "keywords": [], "children": [], - "node_id": "python-4-895" + "node_id": "python-4-895", + "keywords_must": [], + "keywords_forbid": [] } }, { "POST请求": { "keywords": [], "children": [], - "node_id": "python-4-896" + "node_id": "python-4-896", + "keywords_must": [], + "keywords_forbid": [] } }, { "身份认证": { "keywords": [], "children": [], - "node_id": "python-4-897" + "node_id": "python-4-897", + "keywords_must": [], + "keywords_forbid": [] } }, { "基本用法": { "keywords": [], "children": [], - "node_id": "python-4-898" + "node_id": "python-4-898", + "keywords_must": [], + "keywords_forbid": [] } }, { "高级用法": { "keywords": [], "children": [], - "node_id": "python-4-899" + "node_id": "python-4-899", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-151" + "node_id": "python-3-151", + "keywords_must": [ + "requests" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/config.json" index 2e36a9e..4eef6b9 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/config.json" @@ -1,33 +1,43 @@ { - "export": ["selenium.json"], + "export": [ + "selenium.json" + ], "keywords": [], "children": [ { "Selenium简介": { "keywords": [], "children": [], - "node_id": "python-4-900" + "node_id": "python-4-900", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-901" + "node_id": "python-4-901", + "keywords_must": [], + "keywords_forbid": [] } }, { "单元素定位(find_element_id/name/xpath)": { "keywords": [], "children": [], - "node_id": "python-4-902" + "node_id": "python-4-902", + "keywords_must": [], + "keywords_forbid": [] } }, { "多元素定位(find_elements_id/name/xpath)": { "keywords": [], "children": [], - "node_id": "python-4-903" + "node_id": "python-4-903", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -38,62 +48,82 @@ "可管理属性创建": { "keywords": [], "children": [], - "node_id": "python-5-535" + "node_id": "python-5-535", + "keywords_must": [], + "keywords_forbid": [] } }, { "延迟计算属性": { "keywords": [], "children": [], - "node_id": "python-5-536" + "node_id": "python-5-536", + "keywords_must": [], + "keywords_forbid": [] } }, { "属性的代理访问": { "keywords": [], "children": [], - "node_id": "python-5-537" + "node_id": "python-5-537", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建用于计算的属性": { "keywords": [], "children": [], - "node_id": "python-5-538" + "node_id": "python-5-538", + "keywords_must": [], + "keywords_forbid": [] } }, { "为属性添加安全保护机制": { "keywords": [], "children": [], - "node_id": "python-5-539" + "node_id": "python-5-539", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-904" + "node_id": "python-4-904", + "keywords_must": [], + "keywords_forbid": [] } }, { "键盘和鼠标操作": { "keywords": [], "children": [], - "node_id": "python-4-905" + "node_id": "python-4-905", + "keywords_must": [], + "keywords_forbid": [] } }, { "WebDriver API": { "keywords": [], "children": [], - "node_id": "python-4-906" + "node_id": "python-4-906", + "keywords_must": [], + "keywords_forbid": [] } }, { "表单交互": { "keywords": [], "children": [], - "node_id": "python-4-907" + "node_id": "python-4-907", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-152" + "node_id": "python-3-152", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/7.Scrapy\346\241\206\346\236\266/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/7.Scrapy\346\241\206\346\236\266/config.json" index a4f066f..ad2c52c 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/7.Scrapy\346\241\206\346\236\266/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/7.Scrapy\346\241\206\346\236\266/config.json" @@ -9,142 +9,186 @@ "Scrapy简介": { "keywords": [], "children": [], - "node_id": "python-4-908" + "node_id": "python-4-908", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-909" + "node_id": "python-4-909", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy框架组成": { "keywords": [], "children": [], - "node_id": "python-4-910" + "node_id": "python-4-910", + "keywords_must": [], + "keywords_forbid": [] } }, { "Item Pipeline": { "keywords": [], "children": [], - "node_id": "python-4-911" + "node_id": "python-4-911", + "keywords_must": [], + "keywords_forbid": [] } }, { "Downloader": { "keywords": [], "children": [], - "node_id": "python-4-912" + "node_id": "python-4-912", + "keywords_must": [], + "keywords_forbid": [] } }, { "Spiders": { "keywords": [], "children": [], - "node_id": "python-4-913" + "node_id": "python-4-913", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scheduler": { "keywords": [], "children": [], - "node_id": "python-4-914" + "node_id": "python-4-914", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy框架介绍": { "keywords": [], "children": [], - "node_id": "python-4-915" + "node_id": "python-4-915", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy入门": { "keywords": [], "children": [], - "node_id": "python-4-916" + "node_id": "python-4-916", + "keywords_must": [], + "keywords_forbid": [] } }, { "Selector的用法": { "keywords": [], "children": [], - "node_id": "python-4-917" + "node_id": "python-4-917", + "keywords_must": [], + "keywords_forbid": [] } }, { "Spider的用法": { "keywords": [], "children": [], - "node_id": "python-4-918" + "node_id": "python-4-918", + "keywords_must": [], + "keywords_forbid": [] } }, { "Downloader Middleware的用法": { "keywords": [], "children": [], - "node_id": "python-4-919" + "node_id": "python-4-919", + "keywords_must": [], + "keywords_forbid": [] } }, { "Spider Middleware的用法": { "keywords": [], "children": [], - "node_id": "python-4-920" + "node_id": "python-4-920", + "keywords_must": [], + "keywords_forbid": [] } }, { "Item Pipeline的用法": { "keywords": [], "children": [], - "node_id": "python-4-921" + "node_id": "python-4-921", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy对接Selenium": { "keywords": [], "children": [], - "node_id": "python-4-922" + "node_id": "python-4-922", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy对接Splash": { "keywords": [], "children": [], - "node_id": "python-4-923" + "node_id": "python-4-923", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy通用爬虫": { "keywords": [], "children": [], - "node_id": "python-4-924" + "node_id": "python-4-924", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapyrt的使用": { "keywords": [], "children": [], - "node_id": "python-4-925" + "node_id": "python-4-925", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy对接Docker": { "keywords": [], "children": [], - "node_id": "python-4-926" + "node_id": "python-4-926", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy爬取新浪微博": { "keywords": [], "children": [], - "node_id": "python-4-927" + "node_id": "python-4-927", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-153" + "node_id": "python-3-153", + "keywords_must": [ + "scrapy" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/config.json" index f0c7395..d9326ff 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/config.json" @@ -1,28 +1,38 @@ { - "export": ["pyspider.json"], + "export": [ + "pyspider.json" + ], "keywords": [], "children": [ { "pyspider框架介绍": { "keywords": [], "children": [], - "node_id": "python-4-976" + "node_id": "python-4-976", + "keywords_must": [], + "keywords_forbid": [] } }, { "pyspider的基本使用": { "keywords": [], "children": [], - "node_id": "python-4-977" + "node_id": "python-4-977", + "keywords_must": [], + "keywords_forbid": [] } }, { "pyspider用法详解": { "keywords": [], "children": [], - "node_id": "python-4-978" + "node_id": "python-4-978", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-171" + "node_id": "python-3-171", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/config.json" index b579bd2..879b98d 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/config.json" @@ -1,14 +1,20 @@ { - "export": ["verification_code.json"], + "export": [ + "verification_code.json" + ], "keywords": [], "children": [ { "自动输入/OCR字符识别": { "keywords": [], "children": [], - "node_id": "python-4-934" + "node_id": "python-4-934", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-158" + "node_id": "python-3-158", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/config.json" index 808ca98..2b612f1 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-7", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/1.Tkinter/config.json" "b/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/1.Tkinter/config.json" index 0644219..448397b 100644 --- "a/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/1.Tkinter/config.json" +++ "b/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/1.Tkinter/config.json" @@ -9,44 +9,61 @@ "Tkinter简介": { "keywords": [], "children": [], - "node_id": "python-4-988" + "node_id": "python-4-988", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-989" + "node_id": "python-4-989", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tkinter模块": { "keywords": [], "children": [], - "node_id": "python-4-990" + "node_id": "python-4-990", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tkinter控件": { "keywords": [], "children": [], - "node_id": "python-4-991" + "node_id": "python-4-991", + "keywords_must": [], + "keywords_forbid": [] } }, { "标准属性": { "keywords": [], "children": [], - "node_id": "python-4-992" + "node_id": "python-4-992", + "keywords_must": [], + "keywords_forbid": [] } }, { "几何管理": { "keywords": [], "children": [], - "node_id": "python-4-993" + "node_id": "python-4-993", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-174" + "node_id": "python-3-174", + "keywords_must": [ + "tkinter", + "tk" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/2.PyQT/config.json" "b/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/2.PyQT/config.json" index 703f7a3..5a35b6c 100644 --- "a/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/2.PyQT/config.json" +++ "b/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/2.PyQT/config.json" @@ -10,65 +10,87 @@ "PyQT简介": { "keywords": [], "children": [], - "node_id": "python-4-994" + "node_id": "python-4-994", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-995" + "node_id": "python-4-995", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT模块": { "keywords": [], "children": [], - "node_id": "python-4-996" + "node_id": "python-4-996", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT布局管理": { "keywords": [], "children": [], - "node_id": "python-4-997" + "node_id": "python-4-997", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT菜单和工具栏": { "keywords": [], "children": [], - "node_id": "python-4-998" + "node_id": "python-4-998", + "keywords_must": [], + "keywords_forbid": [] } }, { "事件和信号": { "keywords": [], "children": [], - "node_id": "python-4-999" + "node_id": "python-4-999", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT对话框": { "keywords": [], "children": [], - "node_id": "python-4-1000" + "node_id": "python-4-1000", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT控件": { "keywords": [], "children": [], - "node_id": "python-4-1001" + "node_id": "python-4-1001", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT拖拽与绘图": { "keywords": [], "children": [], - "node_id": "python-4-1002" + "node_id": "python-4-1002", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-175" + "node_id": "python-3-175", + "keywords_must": [ + "pyqt" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/3.WxPython/config.json" "b/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/3.WxPython/config.json" index 0c222c5..d6f93ab 100644 --- "a/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/3.WxPython/config.json" +++ "b/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/3.WxPython/config.json" @@ -8,65 +8,88 @@ "WxPython简介": { "keywords": [], "children": [], - "node_id": "python-4-1003" + "node_id": "python-4-1003", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-1004" + "node_id": "python-4-1004", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython常用类": { "keywords": [], "children": [], - "node_id": "python-4-1005" + "node_id": "python-4-1005", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython布局管理": { "keywords": [], "children": [], - "node_id": "python-4-1006" + "node_id": "python-4-1006", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython事件处理": { "keywords": [], "children": [], - "node_id": "python-4-1007" + "node_id": "python-4-1007", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython对话框": { "keywords": [], "children": [], - "node_id": "python-4-1008" + "node_id": "python-4-1008", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython组件": { "keywords": [], "children": [], - "node_id": "python-4-1009" + "node_id": "python-4-1009", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython拖拽处理": { "keywords": [], "children": [], - "node_id": "python-4-1010" + "node_id": "python-4-1010", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython绘图API": { "keywords": [], "children": [], - "node_id": "python-4-1011" + "node_id": "python-4-1011", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-176" + "node_id": "python-3-176", + "keywords_must": [ + "wxpython", + "wx" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/config.json" "b/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/config.json" index afdaa92..d823af3 100644 --- "a/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/config.json" +++ "b/data/2.python\344\270\255\351\230\266/4.\346\241\214\351\235\242\345\272\224\347\224\250\345\274\200\345\217\221/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-8", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/config.json" "b/data/2.python\344\270\255\351\230\266/config.json" index f1791b2..8595b6d 100644 --- "a/data/2.python\344\270\255\351\230\266/config.json" +++ "b/data/2.python\344\270\255\351\230\266/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-1-1", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/1.NumPy\346\246\202\350\277\260/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/1.NumPy\346\246\202\350\277\260/config.json" index e2cfe5f..b4e2da7 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/1.NumPy\346\246\202\350\277\260/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/1.NumPy\346\246\202\350\277\260/config.json" @@ -8,37 +8,52 @@ "NumPy的前世今生": { "keywords": [], "children": [], - "node_id": "python-4-1120" + "node_id": "python-4-1120", + "keywords_must": [], + "keywords_forbid": [] } }, { "NumPy数组vs Python列表": { "keywords": [], "children": [], - "node_id": "python-4-1121" + "node_id": "python-4-1121", + "keywords_must": [], + "keywords_forbid": [] } }, { "NumPy数组类型和属性": { "keywords": [], "children": [], - "node_id": "python-4-1122" + "node_id": "python-4-1122", + "keywords_must": [], + "keywords_forbid": [] } }, { "维、轴、秩": { "keywords": [], "children": [], - "node_id": "python-4-1123" + "node_id": "python-4-1123", + "keywords_must": [], + "keywords_forbid": [] } }, { "广播和矢量化": { "keywords": [], "children": [], - "node_id": "python-4-1124" + "node_id": "python-4-1124", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-195" + "node_id": "python-3-195", + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/2.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/2.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" index 008b609..4141517 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/2.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/2.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" @@ -4,5 +4,10 @@ ], "keywords": [], "children": [], - "node_id": "python-3-196" + "node_id": "python-3-196", + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/3.\345\210\233\345\273\272\346\225\260\347\273\204/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/3.\345\210\233\345\273\272\346\225\260\347\273\204/config.json" index 9c0fa3b..5ed07fe 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/3.\345\210\233\345\273\272\346\225\260\347\273\204/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/3.\345\210\233\345\273\272\346\225\260\347\273\204/config.json" @@ -6,5 +6,10 @@ ], "keywords": [], "children": [], - "node_id": "python-3-197" + "node_id": "python-3-197", + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/4.\346\223\215\344\275\234\346\225\260\347\273\204/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/4.\346\223\215\344\275\234\346\225\260\347\273\204/config.json" index 4dd476d..8df949b 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/4.\346\223\215\344\275\234\346\225\260\347\273\204/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/4.\346\223\215\344\275\234\346\225\260\347\273\204/config.json" @@ -8,65 +8,88 @@ "索引": { "keywords": [], "children": [], - "node_id": "python-4-1125" + "node_id": "python-4-1125", + "keywords_must": [], + "keywords_forbid": [] } }, { "切片": { "keywords": [], "children": [], - "node_id": "python-4-1126" + "node_id": "python-4-1126", + "keywords_must": [], + "keywords_forbid": [] } }, { "改变数组结构": { "keywords": [], "children": [], - "node_id": "python-4-1127" + "node_id": "python-4-1127", + "keywords_must": [], + "keywords_forbid": [] } }, { "合并和拆分": { "keywords": [], "children": [], - "node_id": "python-4-1128" + "node_id": "python-4-1128", + "keywords_must": [], + "keywords_forbid": [] } }, { "复制": { "keywords": [], "children": [], - "node_id": "python-4-1129" + "node_id": "python-4-1129", + "keywords_must": [], + "keywords_forbid": [] } }, { "排序": { "keywords": [], "children": [], - "node_id": "python-4-1130" + "node_id": "python-4-1130", + "keywords_must": [], + "keywords_forbid": [] } }, { "查找": { "keywords": [], "children": [], - "node_id": "python-4-1131" + "node_id": "python-4-1131", + "keywords_must": [], + "keywords_forbid": [] } }, { "筛选": { "keywords": [], "children": [], - "node_id": "python-4-1132" + "node_id": "python-4-1132", + "keywords_must": [], + "keywords_forbid": [] } }, { "数组I/O": { "keywords": [], "children": [], - "node_id": "python-4-1133" + "node_id": "python-4-1133", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-198" + "node_id": "python-3-198", + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/5.\345\270\270\347\224\250\345\207\275\346\225\260/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/5.\345\270\270\347\224\250\345\207\275\346\225\260/config.json" index dc15035..8c2ab38 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/5.\345\270\270\347\224\250\345\207\275\346\225\260/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/5.\345\270\270\347\224\250\345\207\275\346\225\260/config.json" @@ -8,51 +8,70 @@ "np.nan和np.inf": { "keywords": [], "children": [], - "node_id": "python-4-1134" + "node_id": "python-4-1134", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数命名空间": { "keywords": [], "children": [], - "node_id": "python-4-1135" + "node_id": "python-4-1135", + "keywords_must": [], + "keywords_forbid": [] } }, { "数学函数": { "keywords": [], "children": [], - "node_id": "python-4-1136" + "node_id": "python-4-1136", + "keywords_must": [], + "keywords_forbid": [] } }, { "统计函数": { "keywords": [], "children": [], - "node_id": "python-4-1137" + "node_id": "python-4-1137", + "keywords_must": [], + "keywords_forbid": [] } }, { "插值函数": { "keywords": [], "children": [], - "node_id": "python-4-1138" + "node_id": "python-4-1138", + "keywords_must": [], + "keywords_forbid": [] } }, { "多项式拟合函数": { "keywords": [], "children": [], - "node_id": "python-4-1139" + "node_id": "python-4-1139", + "keywords_must": [], + "keywords_forbid": [] } }, { "自定义广播函数": { "keywords": [], "children": [], - "node_id": "python-4-1140" + "node_id": "python-4-1140", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-199" + "node_id": "python-3-199", + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/6.\346\216\251\347\240\201\346\225\260\347\273\204/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/6.\346\216\251\347\240\201\346\225\260\347\273\204/config.json" index de150c0..c90dad9 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/6.\346\216\251\347\240\201\346\225\260\347\273\204/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/6.\346\216\251\347\240\201\346\225\260\347\273\204/config.json" @@ -10,16 +10,25 @@ "创建掩码数组": { "keywords": [], "children": [], - "node_id": "python-4-1141" + "node_id": "python-4-1141", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问掩码数组": { "keywords": [], "children": [], - "node_id": "python-4-1142" + "node_id": "python-4-1142", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-200" + "node_id": "python-3-200", + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/7.\347\237\251\351\230\265\345\257\271\350\261\241/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/7.\347\237\251\351\230\265\345\257\271\350\261\241/config.json" index 063435b..d0f3a1a 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/7.\347\237\251\351\230\265\345\257\271\350\261\241/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/7.\347\237\251\351\230\265\345\257\271\350\261\241/config.json" @@ -8,23 +8,34 @@ "创建矩阵": { "keywords": [], "children": [], - "node_id": "python-4-1143" + "node_id": "python-4-1143", + "keywords_must": [], + "keywords_forbid": [] } }, { "矩阵特有属性": { "keywords": [], "children": [], - "node_id": "python-4-1144" + "node_id": "python-4-1144", + "keywords_must": [], + "keywords_forbid": [] } }, { "矩阵乘法": { "keywords": [], "children": [], - "node_id": "python-4-1145" + "node_id": "python-4-1145", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-201" + "node_id": "python-3-201", + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/8.\351\232\217\346\234\272\346\212\275\346\240\267\345\255\220\346\250\241\345\235\227/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/8.\351\232\217\346\234\272\346\212\275\346\240\267\345\255\220\346\250\241\345\235\227/config.json" index b7204c6..7d8066b 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/8.\351\232\217\346\234\272\346\212\275\346\240\267\345\255\220\346\250\241\345\235\227/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/8.\351\232\217\346\234\272\346\212\275\346\240\267\345\255\220\346\250\241\345\235\227/config.json" @@ -8,30 +8,43 @@ "随机数": { "keywords": [], "children": [], - "node_id": "python-4-1146" + "node_id": "python-4-1146", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机抽样": { "keywords": [], "children": [], - "node_id": "python-4-1147" + "node_id": "python-4-1147", + "keywords_must": [], + "keywords_forbid": [] } }, { "正态分布": { "keywords": [], "children": [], - "node_id": "python-4-1148" + "node_id": "python-4-1148", + "keywords_must": [], + "keywords_forbid": [] } }, { "伪随机数的深度思考": { "keywords": [], "children": [], - "node_id": "python-4-1149" + "node_id": "python-4-1149", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-202" + "node_id": "python-3-202", + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/config.json" "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/config.json" index b3f7837..8b1d9e9 100644 --- "a/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/config.json" +++ "b/data/3.python\351\253\230\351\230\266/1.\347\247\221\345\255\246\350\256\241\347\256\227\345\237\272\347\241\200\350\275\257\344\273\266\345\214\205NumPy/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-10", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/1.Pandas\346\246\202\350\247\210/config.json" "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/1.Pandas\346\246\202\350\247\210/config.json" index 9e990ec..853a090 100644 --- "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/1.Pandas\346\246\202\350\247\210/config.json" +++ "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/1.Pandas\346\246\202\350\247\210/config.json" @@ -9,16 +9,25 @@ "Panda的特点": { "keywords": [], "children": [], - "node_id": "python-4-1150" + "node_id": "python-4-1150", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装和使用": { "keywords": [], "children": [], - "node_id": "python-4-1151" + "node_id": "python-4-1151", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-203" + "node_id": "python-3-203", + "keywords_must": [ + "pandas", + "pd" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/2.\346\225\260\346\215\256\347\273\223\346\236\204/config.json" "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/2.\346\225\260\346\215\256\347\273\223\346\236\204/config.json" index 5f76b1e..f84b2db 100644 --- "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/2.\346\225\260\346\215\256\347\273\223\346\236\204/config.json" +++ "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/2.\346\225\260\346\215\256\347\273\223\346\236\204/config.json" @@ -9,23 +9,34 @@ "索引数组Index": { "keywords": [], "children": [], - "node_id": "python-4-1152" + "node_id": "python-4-1152", + "keywords_must": [], + "keywords_forbid": [] } }, { "带标签的一维同构数组Series": { "keywords": [], "children": [], - "node_id": "python-4-1153" + "node_id": "python-4-1153", + "keywords_must": [], + "keywords_forbid": [] } }, { "带标签的二维异构表格DataFrame": { "keywords": [], "children": [], - "node_id": "python-4-1154" + "node_id": "python-4-1154", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-204" + "node_id": "python-3-204", + "keywords_must": [ + "pandas", + "pd" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/3.\345\237\272\346\234\254\346\223\215\344\275\234/config.json" "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/3.\345\237\272\346\234\254\346\223\215\344\275\234/config.json" index 0e7729f..d1e72de 100644 --- "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/3.\345\237\272\346\234\254\346\223\215\344\275\234/config.json" +++ "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/3.\345\237\272\346\234\254\346\223\215\344\275\234/config.json" @@ -9,44 +9,61 @@ "数据预览": { "keywords": [], "children": [], - "node_id": "python-4-1155" + "node_id": "python-4-1155", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据选择": { "keywords": [], "children": [], - "node_id": "python-4-1156" + "node_id": "python-4-1156", + "keywords_must": [], + "keywords_forbid": [] } }, { "改变数据结构": { "keywords": [], "children": [], - "node_id": "python-4-1157" + "node_id": "python-4-1157", + "keywords_must": [], + "keywords_forbid": [] } }, { "改变数据类型": { "keywords": [], "children": [], - "node_id": "python-4-1158" + "node_id": "python-4-1158", + "keywords_must": [], + "keywords_forbid": [] } }, { "广播与矢量化运算": { "keywords": [], "children": [], - "node_id": "python-4-1159" + "node_id": "python-4-1159", + "keywords_must": [], + "keywords_forbid": [] } }, { "行列级广播函数": { "keywords": [], "children": [], - "node_id": "python-4-1160" + "node_id": "python-4-1160", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-205" + "node_id": "python-3-205", + "keywords_must": [ + "pandas", + "pd" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/4.\351\253\230\347\272\247\345\272\224\347\224\250/config.json" "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/4.\351\253\230\347\272\247\345\272\224\347\224\250/config.json" index 299f8c7..f74a872 100644 --- "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/4.\351\253\230\347\272\247\345\272\224\347\224\250/config.json" +++ "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/4.\351\253\230\347\272\247\345\272\224\347\224\250/config.json" @@ -8,58 +8,79 @@ "分组": { "keywords": [], "children": [], - "node_id": "python-4-1161" + "node_id": "python-4-1161", + "keywords_must": [], + "keywords_forbid": [] } }, { "聚合": { "keywords": [], "children": [], - "node_id": "python-4-1162" + "node_id": "python-4-1162", + "keywords_must": [], + "keywords_forbid": [] } }, { "层次化索引": { "keywords": [], "children": [], - "node_id": "python-4-1163" + "node_id": "python-4-1163", + "keywords_must": [], + "keywords_forbid": [] } }, { "表级广播函数": { "keywords": [], "children": [], - "node_id": "python-4-1164" + "node_id": "python-4-1164", + "keywords_must": [], + "keywords_forbid": [] } }, { "日期时间索引对象": { "keywords": [], "children": [], - "node_id": "python-4-1165" + "node_id": "python-4-1165", + "keywords_must": [], + "keywords_forbid": [] } }, { "透视表": { "keywords": [], "children": [], - "node_id": "python-4-1166" + "node_id": "python-4-1166", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据可视化": { "keywords": [], "children": [], - "node_id": "python-4-1167" + "node_id": "python-4-1167", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据I/O": { "keywords": [], "children": [], - "node_id": "python-4-1168" + "node_id": "python-4-1168", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-206" + "node_id": "python-3-206", + "keywords_must": [ + "pandas", + "pd" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/config.json" "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/config.json" index 4623b08..d22f6dc 100644 --- "a/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/config.json" +++ "b/data/3.python\351\253\230\351\230\266/2.\347\273\223\346\236\204\345\214\226\346\225\260\346\215\256\345\210\206\346\236\220\345\267\245\345\205\267Pandas/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-11", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/1.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/1.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" index 372350e..29b32af 100644 --- "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/1.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" +++ "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/1.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" @@ -4,5 +4,10 @@ ], "keywords": [], "children": [], - "node_id": "python-3-207" + "node_id": "python-3-207", + "keywords_must": [ + "matplotlib", + "matplot" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/2.Matplotlib\345\277\253\351\200\237\345\205\245\351\227\250/config.json" "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/2.Matplotlib\345\277\253\351\200\237\345\205\245\351\227\250/config.json" index 25ef71b..a71c4f6 100644 --- "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/2.Matplotlib\345\277\253\351\200\237\345\205\245\351\227\250/config.json" +++ "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/2.Matplotlib\345\277\253\351\200\237\345\205\245\351\227\250/config.json" @@ -8,37 +8,52 @@ "画布": { "keywords": [], "children": [], - "node_id": "python-4-1169" + "node_id": "python-4-1169", + "keywords_must": [], + "keywords_forbid": [] } }, { "子图与子图布局": { "keywords": [], "children": [], - "node_id": "python-4-1170" + "node_id": "python-4-1170", + "keywords_must": [], + "keywords_forbid": [] } }, { "坐标轴与刻度的名称": { "keywords": [], "children": [], - "node_id": "python-4-1171" + "node_id": "python-4-1171", + "keywords_must": [], + "keywords_forbid": [] } }, { "图例和文本标注": { "keywords": [], "children": [], - "node_id": "python-4-1172" + "node_id": "python-4-1172", + "keywords_must": [], + "keywords_forbid": [] } }, { "显示和保存": { "keywords": [], "children": [], - "node_id": "python-4-1173" + "node_id": "python-4-1173", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-208" + "node_id": "python-3-208", + "keywords_must": [ + "matplotlib", + "matplot" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/3.\345\233\276\345\275\242\347\273\230\345\210\266/config.json" "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/3.\345\233\276\345\275\242\347\273\230\345\210\266/config.json" index 55d2174..25daeee 100644 --- "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/3.\345\233\276\345\275\242\347\273\230\345\210\266/config.json" +++ "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/3.\345\233\276\345\275\242\347\273\230\345\210\266/config.json" @@ -9,51 +9,70 @@ "曲线图": { "keywords": [], "children": [], - "node_id": "python-4-1174" + "node_id": "python-4-1174", + "keywords_must": [], + "keywords_forbid": [] } }, { "散点图": { "keywords": [], "children": [], - "node_id": "python-4-1175" + "node_id": "python-4-1175", + "keywords_must": [], + "keywords_forbid": [] } }, { "直方图": { "keywords": [], "children": [], - "node_id": "python-4-1176" + "node_id": "python-4-1176", + "keywords_must": [], + "keywords_forbid": [] } }, { "饼图": { "keywords": [], "children": [], - "node_id": "python-4-1177" + "node_id": "python-4-1177", + "keywords_must": [], + "keywords_forbid": [] } }, { "箱线图": { "keywords": [], "children": [], - "node_id": "python-4-1178" + "node_id": "python-4-1178", + "keywords_must": [], + "keywords_forbid": [] } }, { "绘制图像": { "keywords": [], "children": [], - "node_id": "python-4-1179" + "node_id": "python-4-1179", + "keywords_must": [], + "keywords_forbid": [] } }, { "极坐标绘图": { "keywords": [], "children": [], - "node_id": "python-4-1180" + "node_id": "python-4-1180", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-209" + "node_id": "python-3-209", + "keywords_must": [ + "matplotlib", + "matplot" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/4.\351\243\216\346\240\274\345\222\214\346\240\267\345\274\217/config.json" "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/4.\351\243\216\346\240\274\345\222\214\346\240\267\345\274\217/config.json" index 91e66b1..e84809f 100644 --- "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/4.\351\243\216\346\240\274\345\222\214\346\240\267\345\274\217/config.json" +++ "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/4.\351\243\216\346\240\274\345\222\214\346\240\267\345\274\217/config.json" @@ -8,65 +8,88 @@ "画布设置": { "keywords": [], "children": [], - "node_id": "python-4-1181" + "node_id": "python-4-1181", + "keywords_must": [], + "keywords_forbid": [] } }, { "子图布局": { "keywords": [], "children": [], - "node_id": "python-4-1182" + "node_id": "python-4-1182", + "keywords_must": [], + "keywords_forbid": [] } }, { "颜色": { "keywords": [], "children": [], - "node_id": "python-4-1183" + "node_id": "python-4-1183", + "keywords_must": [], + "keywords_forbid": [] } }, { "线条和点的样式": { "keywords": [], "children": [], - "node_id": "python-4-1184" + "node_id": "python-4-1184", + "keywords_must": [], + "keywords_forbid": [] } }, { "坐标轴": { "keywords": [], "children": [], - "node_id": "python-4-1185" + "node_id": "python-4-1185", + "keywords_must": [], + "keywords_forbid": [] } }, { "刻度": { "keywords": [], "children": [], - "node_id": "python-4-1186" + "node_id": "python-4-1186", + "keywords_must": [], + "keywords_forbid": [] } }, { "文本": { "keywords": [], "children": [], - "node_id": "python-4-1187" + "node_id": "python-4-1187", + "keywords_must": [], + "keywords_forbid": [] } }, { "图例": { "keywords": [], "children": [], - "node_id": "python-4-1188" + "node_id": "python-4-1188", + "keywords_must": [], + "keywords_forbid": [] } }, { "网格设置": { "keywords": [], "children": [], - "node_id": "python-4-1189" + "node_id": "python-4-1189", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-210" + "node_id": "python-3-210", + "keywords_must": [ + "matplotlib", + "matplot" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/config.json" "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/config.json" index 9af496b..0c8104a 100644 --- "a/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/config.json" +++ "b/data/3.python\351\253\230\351\230\266/3.\347\273\230\345\233\276\345\272\223Matplotlib/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-12", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/1.SciPy\346\246\202\350\247\210/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/1.SciPy\346\246\202\350\247\210/config.json" index 61f254e..f48c912 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/1.SciPy\346\246\202\350\247\210/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/1.SciPy\346\246\202\350\247\210/config.json" @@ -4,5 +4,9 @@ ], "keywords": [], "children": [], - "node_id": "python-3-212" + "node_id": "python-3-212", + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/10.\350\201\232\347\261\273/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/10.\350\201\232\347\261\273/config.json" index 8282217..b442cae 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/10.\350\201\232\347\261\273/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/10.\350\201\232\347\261\273/config.json" @@ -6,16 +6,22 @@ "k-means聚类": { "keywords": [], "children": [], - "node_id": "python-4-1215" + "node_id": "python-4-1215", + "keywords_must": [], + "keywords_forbid": [] } }, { "层次聚类": { "keywords": [], "children": [], - "node_id": "python-4-1216" + "node_id": "python-4-1216", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-221" + "node_id": "python-3-221", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/11.\347\251\272\351\227\264\350\256\241\347\256\227/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/11.\347\251\272\351\227\264\350\256\241\347\256\227/config.json" index e18ed94..5cf3c5f 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/11.\347\251\272\351\227\264\350\256\241\347\256\227/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/11.\347\251\272\351\227\264\350\256\241\347\256\227/config.json" @@ -6,16 +6,22 @@ "空间旋转的表述": { "keywords": [], "children": [], - "node_id": "python-4-1217" + "node_id": "python-4-1217", + "keywords_must": [], + "keywords_forbid": [] } }, { "三维旋转": { "keywords": [], "children": [], - "node_id": "python-4-1218" + "node_id": "python-4-1218", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-222" + "node_id": "python-3-222", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/2.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/2.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" index 9f033cd..93f85e8 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/2.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/2.\345\256\211\350\243\205\351\205\215\347\275\256/config.json" @@ -4,5 +4,9 @@ ], "keywords": [], "children": [], - "node_id": "python-3-213" + "node_id": "python-3-213", + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/3.\346\225\260\346\215\256\346\217\222\345\200\274/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/3.\346\225\260\346\215\256\346\217\222\345\200\274/config.json" index 1ffaa51..3fb11bf 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/3.\346\225\260\346\215\256\346\217\222\345\200\274/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/3.\346\225\260\346\215\256\346\217\222\345\200\274/config.json" @@ -9,23 +9,33 @@ "一维插值": { "keywords": [], "children": [], - "node_id": "python-4-1192" + "node_id": "python-4-1192", + "keywords_must": [], + "keywords_forbid": [] } }, { "二维插值": { "keywords": [], "children": [], - "node_id": "python-4-1193" + "node_id": "python-4-1193", + "keywords_must": [], + "keywords_forbid": [] } }, { "离散数据插值到网格": { "keywords": [], "children": [], - "node_id": "python-4-1194" + "node_id": "python-4-1194", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-214" + "node_id": "python-3-214", + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/4.\346\233\262\347\272\277\346\213\237\345\220\210/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/4.\346\233\262\347\272\277\346\213\237\345\220\210/config.json" index 61b7d5e..ecec46e 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/4.\346\233\262\347\272\277\346\213\237\345\220\210/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/4.\346\233\262\347\272\277\346\213\237\345\220\210/config.json" @@ -9,23 +9,33 @@ "最小二乘法拟合": { "keywords": [], "children": [], - "node_id": "python-4-1195" + "node_id": "python-4-1195", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用curve_fit函数拟合": { "keywords": [], "children": [], - "node_id": "python-4-1196" + "node_id": "python-4-1196", + "keywords_must": [], + "keywords_forbid": [] } }, { "多项式拟合函数": { "keywords": [], "children": [], - "node_id": "python-4-1197" + "node_id": "python-4-1197", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-215" + "node_id": "python-3-215", + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/5.\345\202\205\351\207\214\345\217\266\345\217\230\346\215\242/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/5.\345\202\205\351\207\214\345\217\266\345\217\230\346\215\242/config.json" index b149b68..f299d20 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/5.\345\202\205\351\207\214\345\217\266\345\217\230\346\215\242/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/5.\345\202\205\351\207\214\345\217\266\345\217\230\346\215\242/config.json" @@ -9,23 +9,33 @@ "时域到频域的转换": { "keywords": [], "children": [], - "node_id": "python-4-1198" + "node_id": "python-4-1198", + "keywords_must": [], + "keywords_forbid": [] } }, { "一维傅里叶变换的应用": { "keywords": [], "children": [], - "node_id": "python-4-1199" + "node_id": "python-4-1199", + "keywords_must": [], + "keywords_forbid": [] } }, { "二维傅里叶变换的应用": { "keywords": [], "children": [], - "node_id": "python-4-1200" + "node_id": "python-4-1200", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-216" + "node_id": "python-3-216", + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/6.\345\233\276\345\203\217\345\244\204\347\220\206/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/6.\345\233\276\345\203\217\345\244\204\347\220\206/config.json" index 4e1ceeb..e82c674 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/6.\345\233\276\345\203\217\345\244\204\347\220\206/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/6.\345\233\276\345\203\217\345\244\204\347\220\206/config.json" @@ -8,30 +8,42 @@ "图像卷积": { "keywords": [], "children": [], - "node_id": "python-4-1201" + "node_id": "python-4-1201", + "keywords_must": [], + "keywords_forbid": [] } }, { "边缘检测": { "keywords": [], "children": [], - "node_id": "python-4-1202" + "node_id": "python-4-1202", + "keywords_must": [], + "keywords_forbid": [] } }, { "侵蚀和膨胀": { "keywords": [], "children": [], - "node_id": "python-4-1203" + "node_id": "python-4-1203", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像测量": { "keywords": [], "children": [], - "node_id": "python-4-1204" + "node_id": "python-4-1204", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-217" + "node_id": "python-3-217", + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/7.\347\247\257\345\210\206/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/7.\347\247\257\345\210\206/config.json" index cc0289a..4a2cb18 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/7.\347\247\257\345\210\206/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/7.\347\247\257\345\210\206/config.json" @@ -6,23 +6,31 @@ "对给定函数的定积分": { "keywords": [], "children": [], - "node_id": "python-4-1205" + "node_id": "python-4-1205", + "keywords_must": [], + "keywords_forbid": [] } }, { "对给定样本的定积分": { "keywords": [], "children": [], - "node_id": "python-4-1206" + "node_id": "python-4-1206", + "keywords_must": [], + "keywords_forbid": [] } }, { "二重定积分": { "keywords": [], "children": [], - "node_id": "python-4-1207" + "node_id": "python-4-1207", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-218" + "node_id": "python-3-218", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/8.\351\235\236\347\272\277\346\200\247\346\226\271\347\250\213\346\261\202\350\247\243/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/8.\351\235\236\347\272\277\346\200\247\346\226\271\347\250\213\346\261\202\350\247\243/config.json" index a3476e7..ce150d4 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/8.\351\235\236\347\272\277\346\200\247\346\226\271\347\250\213\346\261\202\350\247\243/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/8.\351\235\236\347\272\277\346\200\247\346\226\271\347\250\213\346\261\202\350\247\243/config.json" @@ -6,16 +6,22 @@ "非线性方程": { "keywords": [], "children": [], - "node_id": "python-4-1208" + "node_id": "python-4-1208", + "keywords_must": [], + "keywords_forbid": [] } }, { "非线性方程组": { "keywords": [], "children": [], - "node_id": "python-4-1209" + "node_id": "python-4-1209", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-219" + "node_id": "python-3-219", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/9.\347\272\277\346\200\247\344\273\243\346\225\260/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/9.\347\272\277\346\200\247\344\273\243\346\225\260/config.json" index 982e500..e9cfc5e 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/9.\347\272\277\346\200\247\344\273\243\346\225\260/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/9.\347\272\277\346\200\247\344\273\243\346\225\260/config.json" @@ -6,37 +6,49 @@ "计算矩阵的行列式": { "keywords": [], "children": [], - "node_id": "python-4-1210" + "node_id": "python-4-1210", + "keywords_must": [], + "keywords_forbid": [] } }, { "求解逆矩阵": { "keywords": [], "children": [], - "node_id": "python-4-1211" + "node_id": "python-4-1211", + "keywords_must": [], + "keywords_forbid": [] } }, { "计算特征向量和特征值": { "keywords": [], "children": [], - "node_id": "python-4-1212" + "node_id": "python-4-1212", + "keywords_must": [], + "keywords_forbid": [] } }, { "矩阵的奇异值分解": { "keywords": [], "children": [], - "node_id": "python-4-1213" + "node_id": "python-4-1213", + "keywords_must": [], + "keywords_forbid": [] } }, { "求解线性方程组": { "keywords": [], "children": [], - "node_id": "python-4-1214" + "node_id": "python-4-1214", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-220" + "node_id": "python-3-220", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/config.json" "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/config.json" index 029506a..0129084 100644 --- "a/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/config.json" +++ "b/data/3.python\351\253\230\351\230\266/4.\347\247\221\345\255\246\350\256\241\347\256\227\345\267\245\345\205\267\345\214\205SciPy/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-13", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/1.CSV\346\226\207\344\273\266/config.json" "b/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/1.CSV\346\226\207\344\273\266/config.json" index c8cc47c..5ed95be 100644 --- "a/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/1.CSV\346\226\207\344\273\266/config.json" +++ "b/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/1.CSV\346\226\207\344\273\266/config.json" @@ -14,25 +14,33 @@ "行中的值满足某个条件": { "keywords": [], "children": [], - "node_id": "python-5-814" + "node_id": "python-5-814", + "keywords_must": [], + "keywords_forbid": [] } }, { "行中的值属于某个集合": { "keywords": [], "children": [], - "node_id": "python-5-815" + "node_id": "python-5-815", + "keywords_must": [], + "keywords_forbid": [] } }, { "行中的值匹配于某个模式/ 正则表达式": { "keywords": [], "children": [], - "node_id": "python-5-816" + "node_id": "python-5-816", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1227" + "node_id": "python-4-1227", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -43,55 +51,75 @@ "列索引值": { "keywords": [], "children": [], - "node_id": "python-5-817" + "node_id": "python-5-817", + "keywords_must": [], + "keywords_forbid": [] } }, { "列标题": { "keywords": [], "children": [], - "node_id": "python-5-818" + "node_id": "python-5-818", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1228" + "node_id": "python-4-1228", + "keywords_must": [], + "keywords_forbid": [] } }, { "选取连续的行": { "keywords": [], "children": [], - "node_id": "python-4-1229" + "node_id": "python-4-1229", + "keywords_must": [], + "keywords_forbid": [] } }, { "添加标题行": { "keywords": [], "children": [], - "node_id": "python-4-1230" + "node_id": "python-4-1230", + "keywords_must": [], + "keywords_forbid": [] } }, { "读取多个CSV文件": { "keywords": [], "children": [], - "node_id": "python-4-1231" + "node_id": "python-4-1231", + "keywords_must": [], + "keywords_forbid": [] } }, { "从多个文件中连接数据": { "keywords": [], "children": [], - "node_id": "python-4-1232" + "node_id": "python-4-1232", + "keywords_must": [], + "keywords_forbid": [] } }, { "计算每个文件中值的总和与均值": { "keywords": [], "children": [], - "node_id": "python-4-1233" + "node_id": "python-4-1233", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-224" + "node_id": "python-3-224", + "keywords_must": [ + "csv" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/2.Excel\346\226\207\344\273\266/config.json" "b/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/2.Excel\346\226\207\344\273\266/config.json" index 80f80a7..1531412 100644 --- "a/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/2.Excel\346\226\207\344\273\266/config.json" +++ "b/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/2.Excel\346\226\207\344\273\266/config.json" @@ -8,7 +8,9 @@ "内省Excel工作簿": { "keywords": [], "children": [], - "node_id": "python-4-1234" + "node_id": "python-4-1234", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -19,25 +21,33 @@ "读写Excel文件": { "keywords": [], "children": [], - "node_id": "python-5-819" + "node_id": "python-5-819", + "keywords_must": [], + "keywords_forbid": [] } }, { "筛选特定行": { "keywords": [], "children": [], - "node_id": "python-5-820" + "node_id": "python-5-820", + "keywords_must": [], + "keywords_forbid": [] } }, { "选取特定列": { "keywords": [], "children": [], - "node_id": "python-5-821" + "node_id": "python-5-821", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1235" + "node_id": "python-4-1235", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -48,25 +58,33 @@ "在所有工作表中筛选特定行": { "keywords": [], "children": [], - "node_id": "python-5-822" + "node_id": "python-5-822", + "keywords_must": [], + "keywords_forbid": [] } }, { "在所有工作表中选取特定列": { "keywords": [], "children": [], - "node_id": "python-5-823" + "node_id": "python-5-823", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1236" + "node_id": "python-4-1236", + "keywords_must": [], + "keywords_forbid": [] } }, { "在Excel工作簿中读取一组工作表": { "keywords": [], "children": [], - "node_id": "python-4-1237" + "node_id": "python-4-1237", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -77,20 +95,30 @@ "工作表计数以及每个工作表中的行列计数": { "keywords": [], "children": [], - "node_id": "python-5-824" + "node_id": "python-5-824", + "keywords_must": [], + "keywords_forbid": [] } }, { "从多个工作簿中连接数据": { "keywords": [], "children": [], - "node_id": "python-5-825" + "node_id": "python-5-825", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1238" + "node_id": "python-4-1238", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-225" + "node_id": "python-3-225", + "keywords_must": [ + "excel" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/3.\346\227\266\351\227\264\345\272\217\345\210\227/config.json" "b/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/3.\346\227\266\351\227\264\345\272\217\345\210\227/config.json" index 15ba535..842062e 100644 --- "a/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/3.\346\227\266\351\227\264\345\272\217\345\210\227/config.json" +++ "b/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/3.\346\227\266\351\227\264\345\272\217\345\210\227/config.json" @@ -133,7 +133,9 @@ "变化的分类": { "keywords": [], "children": [], - "node_id": "python-4-1402" + "node_id": "python-4-1402", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -144,25 +146,33 @@ "曲线拟合": { "keywords": [], "children": [], - "node_id": "python-5-1324" + "node_id": "python-5-1324", + "keywords_must": [], + "keywords_forbid": [] } }, { "从时间序列中去除趋势": { "keywords": [], "children": [], - "node_id": "python-5-1325" + "node_id": "python-5-1325", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1403" + "node_id": "python-4-1403", + "keywords_must": [], + "keywords_forbid": [] } }, { "包含周期性的序列数据分析": { "keywords": [], "children": [], - "node_id": "python-4-1404" + "node_id": "python-4-1404", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -173,18 +183,24 @@ "滤波": { "keywords": [], "children": [], - "node_id": "python-5-1326" + "node_id": "python-5-1326", + "keywords_must": [], + "keywords_forbid": [] } }, { "差分": { "keywords": [], "children": [], - "node_id": "python-5-1327" + "node_id": "python-5-1327", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1405" + "node_id": "python-4-1405", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -195,25 +211,33 @@ "平稳过程": { "keywords": [], "children": [], - "node_id": "python-5-1328" + "node_id": "python-5-1328", + "keywords_must": [], + "keywords_forbid": [] } }, { "自相关和相关图": { "keywords": [], "children": [], - "node_id": "python-5-1329" + "node_id": "python-5-1329", + "keywords_must": [], + "keywords_forbid": [] } }, { "自协方差和自相关函数的估计": { "keywords": [], "children": [], - "node_id": "python-5-1330" + "node_id": "python-5-1330", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1406" + "node_id": "python-4-1406", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -224,54 +248,72 @@ "有用的方法": { "keywords": [], "children": [], - "node_id": "python-5-1331" + "node_id": "python-5-1331", + "keywords_must": [], + "keywords_forbid": [] } }, { "自回归过程": { "keywords": [], "children": [], - "node_id": "python-5-1332" + "node_id": "python-5-1332", + "keywords_must": [], + "keywords_forbid": [] } }, { "估计AR过程的参数": { "keywords": [], "children": [], - "node_id": "python-5-1333" + "node_id": "python-5-1333", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1407" + "node_id": "python-4-1407", + "keywords_must": [], + "keywords_forbid": [] } }, { "混合ARMA模型": { "keywords": [], "children": [], - "node_id": "python-4-1408" + "node_id": "python-4-1408", + "keywords_must": [], + "keywords_forbid": [] } }, { "集成ARMA模型": { "keywords": [], "children": [], - "node_id": "python-4-1409" + "node_id": "python-4-1409", + "keywords_must": [], + "keywords_forbid": [] } }, { "一个特殊的场景": { "keywords": [], "children": [], - "node_id": "python-4-1410" + "node_id": "python-4-1410", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据缺失": { "keywords": [], "children": [], - "node_id": "python-4-1411" + "node_id": "python-4-1411", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/config.json" "b/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/config.json" index 3b49a51..0b16171 100644 --- "a/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/config.json" +++ "b/data/3.python\351\253\230\351\230\266/5.\346\225\260\346\215\256\345\210\206\346\236\220/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-14", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/1.\346\234\272\345\231\250\345\255\246\344\271\240\345\267\245\345\205\267\345\214\205Scikit-learn/config.json" "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/1.\346\234\272\345\231\250\345\255\246\344\271\240\345\267\245\345\205\267\345\214\205Scikit-learn/config.json" index fd2f51b..c599ef5 100644 --- "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/1.\346\234\272\345\231\250\345\255\246\344\271\240\345\267\245\345\205\267\345\214\205Scikit-learn/config.json" +++ "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/1.\346\234\272\345\231\250\345\255\246\344\271\240\345\267\245\345\205\267\345\214\205Scikit-learn/config.json" @@ -8,14 +8,18 @@ "Scikit-learn概览": { "keywords": [], "children": [], - "node_id": "python-4-1308" + "node_id": "python-4-1308", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-1309" + "node_id": "python-4-1309", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -26,25 +30,33 @@ "Scikit-learn自带的数据集": { "keywords": [], "children": [], - "node_id": "python-5-980" + "node_id": "python-5-980", + "keywords_must": [], + "keywords_forbid": [] } }, { "样本生成器": { "keywords": [], "children": [], - "node_id": "python-5-981" + "node_id": "python-5-981", + "keywords_must": [], + "keywords_forbid": [] } }, { "加载其他数据集": { "keywords": [], "children": [], - "node_id": "python-5-982" + "node_id": "python-5-982", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1310" + "node_id": "python-4-1310", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -55,46 +67,60 @@ "标准化": { "keywords": [], "children": [], - "node_id": "python-5-983" + "node_id": "python-5-983", + "keywords_must": [], + "keywords_forbid": [] } }, { "归一化": { "keywords": [], "children": [], - "node_id": "python-5-984" + "node_id": "python-5-984", + "keywords_must": [], + "keywords_forbid": [] } }, { "正则化": { "keywords": [], "children": [], - "node_id": "python-5-985" + "node_id": "python-5-985", + "keywords_must": [], + "keywords_forbid": [] } }, { "离散化": { "keywords": [], "children": [], - "node_id": "python-5-986" + "node_id": "python-5-986", + "keywords_must": [], + "keywords_forbid": [] } }, { "特征编码": { "keywords": [], "children": [], - "node_id": "python-5-987" + "node_id": "python-5-987", + "keywords_must": [], + "keywords_forbid": [] } }, { "缺失值补全": { "keywords": [], "children": [], - "node_id": "python-5-988" + "node_id": "python-5-988", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1311" + "node_id": "python-4-1311", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -105,53 +131,69 @@ "K-近邻分类": { "keywords": [], "children": [], - "node_id": "python-5-989" + "node_id": "python-5-989", + "keywords_must": [], + "keywords_forbid": [] } }, { "贝叶斯分类": { "keywords": [], "children": [], - "node_id": "python-5-990" + "node_id": "python-5-990", + "keywords_must": [], + "keywords_forbid": [] } }, { "决策树分类": { "keywords": [], "children": [], - "node_id": "python-5-991" + "node_id": "python-5-991", + "keywords_must": [], + "keywords_forbid": [] } }, { "支持向量机分类": { "keywords": [], "children": [], - "node_id": "python-5-992" + "node_id": "python-5-992", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机森林分类": { "keywords": [], "children": [], - "node_id": "python-5-993" + "node_id": "python-5-993", + "keywords_must": [], + "keywords_forbid": [] } }, { "集成学习Bagging/Boosting": { "keywords": [], "children": [], - "node_id": "python-5-994" + "node_id": "python-5-994", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络模型": { "keywords": [], "children": [], - "node_id": "python-5-995" + "node_id": "python-5-995", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1312" + "node_id": "python-4-1312", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -162,53 +204,69 @@ "线性回归": { "keywords": [], "children": [], - "node_id": "python-5-996" + "node_id": "python-5-996", + "keywords_must": [], + "keywords_forbid": [] } }, { "Lasso回归": { "keywords": [], "children": [], - "node_id": "python-5-997" + "node_id": "python-5-997", + "keywords_must": [], + "keywords_forbid": [] } }, { "支持向量机回归": { "keywords": [], "children": [], - "node_id": "python-5-998" + "node_id": "python-5-998", + "keywords_must": [], + "keywords_forbid": [] } }, { "K-近邻回归": { "keywords": [], "children": [], - "node_id": "python-5-999" + "node_id": "python-5-999", + "keywords_must": [], + "keywords_forbid": [] } }, { "决策树回归": { "keywords": [], "children": [], - "node_id": "python-5-1000" + "node_id": "python-5-1000", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机森林回归": { "keywords": [], "children": [], - "node_id": "python-5-1001" + "node_id": "python-5-1001", + "keywords_must": [], + "keywords_forbid": [] } }, { "逻辑回归": { "keywords": [], "children": [], - "node_id": "python-5-1002" + "node_id": "python-5-1002", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1313" + "node_id": "python-4-1313", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -219,28 +277,36 @@ "K-Means聚类": { "keywords": [], "children": [], - "node_id": "python-5-1003" + "node_id": "python-5-1003", + "keywords_must": [], + "keywords_forbid": [] } }, { "均值漂移聚类": { "keywords": [], "children": [], - "node_id": "python-5-1004" + "node_id": "python-5-1004", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于密度的空间聚类": { "keywords": [], "children": [], - "node_id": "python-5-1005" + "node_id": "python-5-1005", + "keywords_must": [], + "keywords_forbid": [] } }, { "谱聚类": { "keywords": [], "children": [], - "node_id": "python-5-1006" + "node_id": "python-5-1006", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -251,36 +317,48 @@ "自下而上的方法": { "keywords": [], "children": [], - "node_id": "python-6-174" + "node_id": "python-6-174", + "keywords_must": [], + "keywords_forbid": [] } }, { "聚类之间的距离": { "keywords": [], "children": [], - "node_id": "python-6-175" + "node_id": "python-6-175", + "keywords_must": [], + "keywords_forbid": [] } }, { "自上而下的方法": { "keywords": [], "children": [], - "node_id": "python-6-176" + "node_id": "python-6-176", + "keywords_must": [], + "keywords_forbid": [] } }, { "图论方法": { "keywords": [], "children": [], - "node_id": "python-6-177" + "node_id": "python-6-177", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1007" + "node_id": "python-5-1007", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1314" + "node_id": "python-4-1314", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -291,32 +369,42 @@ "主成分分析": { "keywords": [], "children": [], - "node_id": "python-5-1008" + "node_id": "python-5-1008", + "keywords_must": [], + "keywords_forbid": [] } }, { "因子分析": { "keywords": [], "children": [], - "node_id": "python-5-1009" + "node_id": "python-5-1009", + "keywords_must": [], + "keywords_forbid": [] } }, { "截断奇异值分解": { "keywords": [], "children": [], - "node_id": "python-5-1010" + "node_id": "python-5-1010", + "keywords_must": [], + "keywords_forbid": [] } }, { "独立成分分析ICA(Independent Component Analysis)": { "keywords": [], "children": [], - "node_id": "python-5-1011" + "node_id": "python-5-1011", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1315" + "node_id": "python-4-1315", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -327,41 +415,55 @@ "估计器得分": { "keywords": [], "children": [], - "node_id": "python-5-1012" + "node_id": "python-5-1012", + "keywords_must": [], + "keywords_forbid": [] } }, { "交叉验证": { "keywords": [], "children": [], - "node_id": "python-5-1013" + "node_id": "python-5-1013", + "keywords_must": [], + "keywords_forbid": [] } }, { "评价指标": { "keywords": [], "children": [], - "node_id": "python-5-1014" + "node_id": "python-5-1014", + "keywords_must": [], + "keywords_forbid": [] } }, { "参数调优": { "keywords": [], "children": [], - "node_id": "python-5-1015" + "node_id": "python-5-1015", + "keywords_must": [], + "keywords_forbid": [] } }, { "模型持久化": { "keywords": [], "children": [], - "node_id": "python-5-1016" + "node_id": "python-5-1016", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1316" + "node_id": "python-4-1316", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-245" + "node_id": "python-3-245", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/2.\346\267\261\345\272\246\345\255\246\344\271\240/config.json" "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/2.\346\267\261\345\272\246\345\255\246\344\271\240/config.json" index a86de86..73559ae 100644 --- "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/2.\346\267\261\345\272\246\345\255\246\344\271\240/config.json" +++ "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/2.\346\267\261\345\272\246\345\255\246\344\271\240/config.json" @@ -12,60 +12,78 @@ "人工智能发展历史": { "keywords": [], "children": [], - "node_id": "python-5-1017" + "node_id": "python-5-1017", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经元": { "keywords": [], "children": [], - "node_id": "python-5-1018" + "node_id": "python-5-1018", + "keywords_must": [], + "keywords_forbid": [] } }, { "BP神经网络": { "keywords": [], "children": [], - "node_id": "python-5-1019" + "node_id": "python-5-1019", + "keywords_must": [], + "keywords_forbid": [] } }, { "梯度下降": { "keywords": [], "children": [], - "node_id": "python-5-1020" + "node_id": "python-5-1020", + "keywords_must": [], + "keywords_forbid": [] } }, { "激励函数": { "keywords": [], "children": [], - "node_id": "python-5-1021" + "node_id": "python-5-1021", + "keywords_must": [], + "keywords_forbid": [] } }, { "过拟合、欠拟合": { "keywords": [], "children": [], - "node_id": "python-5-1022" + "node_id": "python-5-1022", + "keywords_must": [], + "keywords_forbid": [] } }, { "优化器Optimizer": { "keywords": [], "children": [], - "node_id": "python-5-1023" + "node_id": "python-5-1023", + "keywords_must": [], + "keywords_forbid": [] } }, { "常用开发工具": { "keywords": [], "children": [], - "node_id": "python-5-1024" + "node_id": "python-5-1024", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1317" + "node_id": "python-4-1317", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -76,32 +94,42 @@ "Windows搭建深度学习环境": { "keywords": [], "children": [], - "node_id": "python-5-1025" + "node_id": "python-5-1025", + "keywords_must": [], + "keywords_forbid": [] } }, { "Linux搭建深度学习环境": { "keywords": [], "children": [], - "node_id": "python-5-1026" + "node_id": "python-5-1026", + "keywords_must": [], + "keywords_forbid": [] } }, { "MacOS搭建深度学习环境": { "keywords": [], "children": [], - "node_id": "python-5-1027" + "node_id": "python-5-1027", + "keywords_must": [], + "keywords_forbid": [] } }, { "CPU/GPU环境搭建": { "keywords": [], "children": [], - "node_id": "python-5-1028" + "node_id": "python-5-1028", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1318" + "node_id": "python-4-1318", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -112,53 +140,69 @@ "Theano基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1029" + "node_id": "python-5-1029", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义Layer": { "keywords": [], "children": [], - "node_id": "python-5-1030" + "node_id": "python-5-1030", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN": { "keywords": [], "children": [], - "node_id": "python-5-1031" + "node_id": "python-5-1031", + "keywords_must": [], + "keywords_forbid": [] } }, { "RNN(GRU/LSTM)": { "keywords": [], "children": [], - "node_id": "python-5-1032" + "node_id": "python-5-1032", + "keywords_must": [], + "keywords_forbid": [] } }, { "Autoencoder": { "keywords": [], "children": [], - "node_id": "python-5-1033" + "node_id": "python-5-1033", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络参数保存": { "keywords": [], "children": [], - "node_id": "python-5-1034" + "node_id": "python-5-1034", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络性能评价": { "keywords": [], "children": [], - "node_id": "python-5-1035" + "node_id": "python-5-1035", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1319" + "node_id": "python-4-1319", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -169,95 +213,123 @@ "TensorFlow基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1036" + "node_id": "python-5-1036", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tensor": { "keywords": [], "children": [], - "node_id": "python-5-1037" + "node_id": "python-5-1037", + "keywords_must": [], + "keywords_forbid": [] } }, { "Session": { "keywords": [], "children": [], - "node_id": "python-5-1038" + "node_id": "python-5-1038", + "keywords_must": [], + "keywords_forbid": [] } }, { "Variable": { "keywords": [], "children": [], - "node_id": "python-5-1039" + "node_id": "python-5-1039", + "keywords_must": [], + "keywords_forbid": [] } }, { "Placeholder": { "keywords": [], "children": [], - "node_id": "python-5-1040" + "node_id": "python-5-1040", + "keywords_must": [], + "keywords_forbid": [] } }, { "Dropout": { "keywords": [], "children": [], - "node_id": "python-5-1041" + "node_id": "python-5-1041", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tensorboard": { "keywords": [], "children": [], - "node_id": "python-5-1042" + "node_id": "python-5-1042", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN": { "keywords": [], "children": [], - "node_id": "python-5-1043" + "node_id": "python-5-1043", + "keywords_must": [], + "keywords_forbid": [] } }, { "RNN(GRU/LSTM)": { "keywords": [], "children": [], - "node_id": "python-5-1044" + "node_id": "python-5-1044", + "keywords_must": [], + "keywords_forbid": [] } }, { "Autoencoder": { "keywords": [], "children": [], - "node_id": "python-5-1045" + "node_id": "python-5-1045", + "keywords_must": [], + "keywords_forbid": [] } }, { "GNN": { "keywords": [], "children": [], - "node_id": "python-5-1046" + "node_id": "python-5-1046", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络参数保存": { "keywords": [], "children": [], - "node_id": "python-5-1047" + "node_id": "python-5-1047", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络性能评价": { "keywords": [], "children": [], - "node_id": "python-5-1048" + "node_id": "python-5-1048", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1320" + "node_id": "python-4-1320", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -268,95 +340,123 @@ "Keras基础语法": { "keywords": [], "children": [], - "node_id": "python-5-1049" + "node_id": "python-5-1049", + "keywords_must": [], + "keywords_forbid": [] } }, { "兼容Backend": { "keywords": [], "children": [], - "node_id": "python-5-1050" + "node_id": "python-5-1050", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数模型和序列模型": { "keywords": [], "children": [], - "node_id": "python-5-1051" + "node_id": "python-5-1051", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义Layer": { "keywords": [], "children": [], - "node_id": "python-5-1052" + "node_id": "python-5-1052", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN": { "keywords": [], "children": [], - "node_id": "python-5-1053" + "node_id": "python-5-1053", + "keywords_must": [], + "keywords_forbid": [] } }, { "RNN(GRU/LSTM)": { "keywords": [], "children": [], - "node_id": "python-5-1054" + "node_id": "python-5-1054", + "keywords_must": [], + "keywords_forbid": [] } }, { "Autoencoder": { "keywords": [], "children": [], - "node_id": "python-5-1055" + "node_id": "python-5-1055", + "keywords_must": [], + "keywords_forbid": [] } }, { "GNN": { "keywords": [], "children": [], - "node_id": "python-5-1056" + "node_id": "python-5-1056", + "keywords_must": [], + "keywords_forbid": [] } }, { "迁移学习": { "keywords": [], "children": [], - "node_id": "python-5-1057" + "node_id": "python-5-1057", + "keywords_must": [], + "keywords_forbid": [] } }, { "BiLSTM-Attention": { "keywords": [], "children": [], - "node_id": "python-5-1058" + "node_id": "python-5-1058", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成对抗网络GAN": { "keywords": [], "children": [], - "node_id": "python-5-1059" + "node_id": "python-5-1059", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络参数保存": { "keywords": [], "children": [], - "node_id": "python-5-1060" + "node_id": "python-5-1060", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络性能评价": { "keywords": [], "children": [], - "node_id": "python-5-1061" + "node_id": "python-5-1061", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1321" + "node_id": "python-4-1321", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -367,95 +467,123 @@ "PyTorch基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1062" + "node_id": "python-5-1062", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tensor": { "keywords": [], "children": [], - "node_id": "python-5-1063" + "node_id": "python-5-1063", + "keywords_must": [], + "keywords_forbid": [] } }, { "Variable": { "keywords": [], "children": [], - "node_id": "python-5-1064" + "node_id": "python-5-1064", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义Layer": { "keywords": [], "children": [], - "node_id": "python-5-1065" + "node_id": "python-5-1065", + "keywords_must": [], + "keywords_forbid": [] } }, { "可视化": { "keywords": [], "children": [], - "node_id": "python-5-1066" + "node_id": "python-5-1066", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN(TextCNN)": { "keywords": [], "children": [], - "node_id": "python-5-1067" + "node_id": "python-5-1067", + "keywords_must": [], + "keywords_forbid": [] } }, { "RNN(GRU/LSTM)": { "keywords": [], "children": [], - "node_id": "python-5-1068" + "node_id": "python-5-1068", + "keywords_must": [], + "keywords_forbid": [] } }, { "Autoencoder": { "keywords": [], "children": [], - "node_id": "python-5-1069" + "node_id": "python-5-1069", + "keywords_must": [], + "keywords_forbid": [] } }, { "GNN/GCN": { "keywords": [], "children": [], - "node_id": "python-5-1070" + "node_id": "python-5-1070", + "keywords_must": [], + "keywords_forbid": [] } }, { "迁移学习": { "keywords": [], "children": [], - "node_id": "python-5-1071" + "node_id": "python-5-1071", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成对抗网络GAN": { "keywords": [], "children": [], - "node_id": "python-5-1072" + "node_id": "python-5-1072", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络参数保存": { "keywords": [], "children": [], - "node_id": "python-5-1073" + "node_id": "python-5-1073", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络性能评价": { "keywords": [], "children": [], - "node_id": "python-5-1074" + "node_id": "python-5-1074", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1322" + "node_id": "python-4-1322", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -466,48 +594,64 @@ "强化学习概念": { "keywords": [], "children": [], - "node_id": "python-5-1075" + "node_id": "python-5-1075", + "keywords_must": [], + "keywords_forbid": [] } }, { "Q-Learning": { "keywords": [], "children": [], - "node_id": "python-5-1076" + "node_id": "python-5-1076", + "keywords_must": [], + "keywords_forbid": [] } }, { "Sarsa": { "keywords": [], "children": [], - "node_id": "python-5-1077" + "node_id": "python-5-1077", + "keywords_must": [], + "keywords_forbid": [] } }, { "DQN(Deep Q Network)": { "keywords": [], "children": [], - "node_id": "python-5-1078" + "node_id": "python-5-1078", + "keywords_must": [], + "keywords_forbid": [] } }, { "Policy Gradients": { "keywords": [], "children": [], - "node_id": "python-5-1079" + "node_id": "python-5-1079", + "keywords_must": [], + "keywords_forbid": [] } }, { "Actor Critic": { "keywords": [], "children": [], - "node_id": "python-5-1080" + "node_id": "python-5-1080", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1323" + "node_id": "python-4-1323", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-246" + "node_id": "python-3-246", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/3.\350\256\241\347\256\227\346\234\272\350\247\206\350\247\211/config.json" "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/3.\350\256\241\347\256\227\346\234\272\350\247\206\350\247\211/config.json" index a5119a5..eae9a43 100644 --- "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/3.\350\256\241\347\256\227\346\234\272\350\247\206\350\247\211/config.json" +++ "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/3.\350\256\241\347\256\227\346\234\272\350\247\206\350\247\211/config.json" @@ -12,32 +12,42 @@ "数字图像处理": { "keywords": [], "children": [], - "node_id": "python-5-1081" + "node_id": "python-5-1081", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像三要素": { "keywords": [], "children": [], - "node_id": "python-5-1082" + "node_id": "python-5-1082", + "keywords_must": [], + "keywords_forbid": [] } }, { "像素及图像类型": { "keywords": [], "children": [], - "node_id": "python-5-1083" + "node_id": "python-5-1083", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像信号数字转换": { "keywords": [], "children": [], - "node_id": "python-5-1084" + "node_id": "python-5-1084", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1324" + "node_id": "python-4-1324", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -48,25 +58,33 @@ "安装配置": { "keywords": [], "children": [], - "node_id": "python-5-1085" + "node_id": "python-5-1085", + "keywords_must": [], + "keywords_forbid": [] } }, { "OpenCV基础语法": { "keywords": [], "children": [], - "node_id": "python-5-1086" + "node_id": "python-5-1086", + "keywords_must": [], + "keywords_forbid": [] } }, { "几何图形绘制": { "keywords": [], "children": [], - "node_id": "python-5-1087" + "node_id": "python-5-1087", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1325" + "node_id": "python-4-1325", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -77,32 +95,42 @@ "读取显示图像": { "keywords": [], "children": [], - "node_id": "python-5-1088" + "node_id": "python-5-1088", + "keywords_must": [], + "keywords_forbid": [] } }, { "读取修改像素": { "keywords": [], "children": [], - "node_id": "python-5-1089" + "node_id": "python-5-1089", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建复制保存图像": { "keywords": [], "children": [], - "node_id": "python-5-1090" + "node_id": "python-5-1090", + "keywords_must": [], + "keywords_forbid": [] } }, { "获取图像属性及通道": { "keywords": [], "children": [], - "node_id": "python-5-1091" + "node_id": "python-5-1091", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1326" + "node_id": "python-4-1326", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -113,46 +141,60 @@ "图像加法运算": { "keywords": [], "children": [], - "node_id": "python-5-1092" + "node_id": "python-5-1092", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像减法运算": { "keywords": [], "children": [], - "node_id": "python-5-1093" + "node_id": "python-5-1093", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像与运算": { "keywords": [], "children": [], - "node_id": "python-5-1094" + "node_id": "python-5-1094", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像或运算": { "keywords": [], "children": [], - "node_id": "python-5-1095" + "node_id": "python-5-1095", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像异或运算": { "keywords": [], "children": [], - "node_id": "python-5-1096" + "node_id": "python-5-1096", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像非运算": { "keywords": [], "children": [], - "node_id": "python-5-1097" + "node_id": "python-5-1097", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1327" + "node_id": "python-4-1327", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -163,46 +205,60 @@ "平移变换": { "keywords": [], "children": [], - "node_id": "python-5-1098" + "node_id": "python-5-1098", + "keywords_must": [], + "keywords_forbid": [] } }, { "缩放变换": { "keywords": [], "children": [], - "node_id": "python-5-1099" + "node_id": "python-5-1099", + "keywords_must": [], + "keywords_forbid": [] } }, { "旋转变换": { "keywords": [], "children": [], - "node_id": "python-5-1100" + "node_id": "python-5-1100", + "keywords_must": [], + "keywords_forbid": [] } }, { "镜像变换": { "keywords": [], "children": [], - "node_id": "python-5-1101" + "node_id": "python-5-1101", + "keywords_must": [], + "keywords_forbid": [] } }, { "仿射变换": { "keywords": [], "children": [], - "node_id": "python-5-1102" + "node_id": "python-5-1102", + "keywords_must": [], + "keywords_forbid": [] } }, { "透视变换": { "keywords": [], "children": [], - "node_id": "python-5-1103" + "node_id": "python-5-1103", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1328" + "node_id": "python-4-1328", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -213,32 +269,42 @@ "图像量化处理": { "keywords": [], "children": [], - "node_id": "python-5-1104" + "node_id": "python-5-1104", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像采样处理": { "keywords": [], "children": [], - "node_id": "python-5-1105" + "node_id": "python-5-1105", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像金字塔": { "keywords": [], "children": [], - "node_id": "python-5-1106" + "node_id": "python-5-1106", + "keywords_must": [], + "keywords_forbid": [] } }, { "局部马赛克处理": { "keywords": [], "children": [], - "node_id": "python-5-1107" + "node_id": "python-5-1107", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1329" + "node_id": "python-4-1329", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -249,39 +315,51 @@ "直方图概述": { "keywords": [], "children": [], - "node_id": "python-5-1108" + "node_id": "python-5-1108", + "keywords_must": [], + "keywords_forbid": [] } }, { "直方图绘制": { "keywords": [], "children": [], - "node_id": "python-5-1109" + "node_id": "python-5-1109", + "keywords_must": [], + "keywords_forbid": [] } }, { "掩膜直方图": { "keywords": [], "children": [], - "node_id": "python-5-1110" + "node_id": "python-5-1110", + "keywords_must": [], + "keywords_forbid": [] } }, { "H-S直方图": { "keywords": [], "children": [], - "node_id": "python-5-1111" + "node_id": "python-5-1111", + "keywords_must": [], + "keywords_forbid": [] } }, { "直方图对比": { "keywords": [], "children": [], - "node_id": "python-5-1112" + "node_id": "python-5-1112", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1330" + "node_id": "python-4-1330", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -292,39 +370,51 @@ "图像增强": { "keywords": [], "children": [], - "node_id": "python-5-1113" + "node_id": "python-5-1113", + "keywords_must": [], + "keywords_forbid": [] } }, { "直方图均衡化": { "keywords": [], "children": [], - "node_id": "python-5-1114" + "node_id": "python-5-1114", + "keywords_must": [], + "keywords_forbid": [] } }, { "局部直方图均衡化": { "keywords": [], "children": [], - "node_id": "python-5-1115" + "node_id": "python-5-1115", + "keywords_must": [], + "keywords_forbid": [] } }, { "自动色彩均衡化": { "keywords": [], "children": [], - "node_id": "python-5-1116" + "node_id": "python-5-1116", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像去雾": { "keywords": [], "children": [], - "node_id": "python-5-1117" + "node_id": "python-5-1117", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1331" + "node_id": "python-4-1331", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -335,46 +425,60 @@ "图像平滑概述": { "keywords": [], "children": [], - "node_id": "python-5-1118" + "node_id": "python-5-1118", + "keywords_must": [], + "keywords_forbid": [] } }, { "均值滤波": { "keywords": [], "children": [], - "node_id": "python-5-1119" + "node_id": "python-5-1119", + "keywords_must": [], + "keywords_forbid": [] } }, { "方框滤波": { "keywords": [], "children": [], - "node_id": "python-5-1120" + "node_id": "python-5-1120", + "keywords_must": [], + "keywords_forbid": [] } }, { "高斯滤波": { "keywords": [], "children": [], - "node_id": "python-5-1121" + "node_id": "python-5-1121", + "keywords_must": [], + "keywords_forbid": [] } }, { "中值滤波": { "keywords": [], "children": [], - "node_id": "python-5-1122" + "node_id": "python-5-1122", + "keywords_must": [], + "keywords_forbid": [] } }, { "双边滤波": { "keywords": [], "children": [], - "node_id": "python-5-1123" + "node_id": "python-5-1123", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1332" + "node_id": "python-4-1332", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -385,60 +489,78 @@ "一阶微分算法、二阶微分算子": { "keywords": [], "children": [], - "node_id": "python-5-1124" + "node_id": "python-5-1124", + "keywords_must": [], + "keywords_forbid": [] } }, { "Roberts算子": { "keywords": [], "children": [], - "node_id": "python-5-1125" + "node_id": "python-5-1125", + "keywords_must": [], + "keywords_forbid": [] } }, { "Prewitt算子": { "keywords": [], "children": [], - "node_id": "python-5-1126" + "node_id": "python-5-1126", + "keywords_must": [], + "keywords_forbid": [] } }, { "Sobel算子": { "keywords": [], "children": [], - "node_id": "python-5-1127" + "node_id": "python-5-1127", + "keywords_must": [], + "keywords_forbid": [] } }, { "Laplacian算子": { "keywords": [], "children": [], - "node_id": "python-5-1128" + "node_id": "python-5-1128", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scharr算子": { "keywords": [], "children": [], - "node_id": "python-5-1129" + "node_id": "python-5-1129", + "keywords_must": [], + "keywords_forbid": [] } }, { "Canny算子": { "keywords": [], "children": [], - "node_id": "python-5-1130" + "node_id": "python-5-1130", + "keywords_must": [], + "keywords_forbid": [] } }, { "LOG算子": { "keywords": [], "children": [], - "node_id": "python-5-1131" + "node_id": "python-5-1131", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1333" + "node_id": "python-4-1333", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -449,53 +571,69 @@ "图像腐蚀": { "keywords": [], "children": [], - "node_id": "python-5-1132" + "node_id": "python-5-1132", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像膨胀": { "keywords": [], "children": [], - "node_id": "python-5-1133" + "node_id": "python-5-1133", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像开运算": { "keywords": [], "children": [], - "node_id": "python-5-1134" + "node_id": "python-5-1134", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像闭运算": { "keywords": [], "children": [], - "node_id": "python-5-1135" + "node_id": "python-5-1135", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像梯度运算": { "keywords": [], "children": [], - "node_id": "python-5-1136" + "node_id": "python-5-1136", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像顶帽运算": { "keywords": [], "children": [], - "node_id": "python-5-1137" + "node_id": "python-5-1137", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像底帽运算": { "keywords": [], "children": [], - "node_id": "python-5-1138" + "node_id": "python-5-1138", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1334" + "node_id": "python-4-1334", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -506,60 +644,78 @@ "基于阈值的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1139" + "node_id": "python-5-1139", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于边缘检测的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1140" + "node_id": "python-5-1140", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于纹理背景的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1141" + "node_id": "python-5-1141", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于K-Means聚类的区域分割": { "keywords": [], "children": [], - "node_id": "python-5-1142" + "node_id": "python-5-1142", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于均值漂移算法的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1143" + "node_id": "python-5-1143", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于分水岭算法的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1144" + "node_id": "python-5-1144", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像漫水填充分割": { "keywords": [], "children": [], - "node_id": "python-5-1145" + "node_id": "python-5-1145", + "keywords_must": [], + "keywords_forbid": [] } }, { "文字区域分割及定位": { "keywords": [], "children": [], - "node_id": "python-5-1146" + "node_id": "python-5-1146", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1335" + "node_id": "python-4-1335", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -570,32 +726,42 @@ "傅里叶变换": { "keywords": [], "children": [], - "node_id": "python-5-1147" + "node_id": "python-5-1147", + "keywords_must": [], + "keywords_forbid": [] } }, { "傅里叶逆变换": { "keywords": [], "children": [], - "node_id": "python-5-1148" + "node_id": "python-5-1148", + "keywords_must": [], + "keywords_forbid": [] } }, { "高通滤波器": { "keywords": [], "children": [], - "node_id": "python-5-1149" + "node_id": "python-5-1149", + "keywords_must": [], + "keywords_forbid": [] } }, { "低通滤波器": { "keywords": [], "children": [], - "node_id": "python-5-1150" + "node_id": "python-5-1150", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1336" + "node_id": "python-4-1336", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -606,25 +772,33 @@ "霍夫变换": { "keywords": [], "children": [], - "node_id": "python-5-1151" + "node_id": "python-5-1151", + "keywords_must": [], + "keywords_forbid": [] } }, { "霍夫线变换": { "keywords": [], "children": [], - "node_id": "python-5-1152" + "node_id": "python-5-1152", + "keywords_must": [], + "keywords_forbid": [] } }, { "霍夫圆变换": { "keywords": [], "children": [], - "node_id": "python-5-1153" + "node_id": "python-5-1153", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1337" + "node_id": "python-4-1337", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -635,60 +809,78 @@ "图像毛玻璃特效": { "keywords": [], "children": [], - "node_id": "python-5-1154" + "node_id": "python-5-1154", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像浮雕特效": { "keywords": [], "children": [], - "node_id": "python-5-1155" + "node_id": "python-5-1155", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像素描特效": { "keywords": [], "children": [], - "node_id": "python-5-1156" + "node_id": "python-5-1156", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像怀旧特效": { "keywords": [], "children": [], - "node_id": "python-5-1157" + "node_id": "python-5-1157", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像流年特效": { "keywords": [], "children": [], - "node_id": "python-5-1158" + "node_id": "python-5-1158", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像滤镜特效": { "keywords": [], "children": [], - "node_id": "python-5-1159" + "node_id": "python-5-1159", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像水波特效": { "keywords": [], "children": [], - "node_id": "python-5-1160" + "node_id": "python-5-1160", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像卡通特效": { "keywords": [], "children": [], - "node_id": "python-5-1161" + "node_id": "python-5-1161", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1338" + "node_id": "python-4-1338", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -699,60 +891,78 @@ "图像分类概述": { "keywords": [], "children": [], - "node_id": "python-5-1162" + "node_id": "python-5-1162", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于机器学习的图像分类": { "keywords": [], "children": [], - "node_id": "python-5-1163" + "node_id": "python-5-1163", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于深度学习的图像分类": { "keywords": [], "children": [], - "node_id": "python-5-1164" + "node_id": "python-5-1164", + "keywords_must": [], + "keywords_forbid": [] } }, { "LeNet": { "keywords": [], "children": [], - "node_id": "python-5-1165" + "node_id": "python-5-1165", + "keywords_must": [], + "keywords_forbid": [] } }, { "VGG": { "keywords": [], "children": [], - "node_id": "python-5-1166" + "node_id": "python-5-1166", + "keywords_must": [], + "keywords_forbid": [] } }, { "AlexNet": { "keywords": [], "children": [], - "node_id": "python-5-1167" + "node_id": "python-5-1167", + "keywords_must": [], + "keywords_forbid": [] } }, { "ResNet": { "keywords": [], "children": [], - "node_id": "python-5-1168" + "node_id": "python-5-1168", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1339" + "node_id": "python-4-1339", + "keywords_must": [], + "keywords_forbid": [] } }, { "人脸识别": { "keywords": [], "children": [], - "node_id": "python-4-1340" + "node_id": "python-4-1340", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -763,53 +973,69 @@ "目标检测概述": { "keywords": [], "children": [], - "node_id": "python-5-1169" + "node_id": "python-5-1169", + "keywords_must": [], + "keywords_forbid": [] } }, { "RCNN": { "keywords": [], "children": [], - "node_id": "python-5-1170" + "node_id": "python-5-1170", + "keywords_must": [], + "keywords_forbid": [] } }, { "Fast-RCNN": { "keywords": [], "children": [], - "node_id": "python-5-1171" + "node_id": "python-5-1171", + "keywords_must": [], + "keywords_forbid": [] } }, { "SPPNet": { "keywords": [], "children": [], - "node_id": "python-5-1172" + "node_id": "python-5-1172", + "keywords_must": [], + "keywords_forbid": [] } }, { "Mask-RCNN": { "keywords": [], "children": [], - "node_id": "python-5-1173" + "node_id": "python-5-1173", + "keywords_must": [], + "keywords_forbid": [] } }, { "SSD": { "keywords": [], "children": [], - "node_id": "python-5-1174" + "node_id": "python-5-1174", + "keywords_must": [], + "keywords_forbid": [] } }, { "YOLO系列算法": { "keywords": [], "children": [], - "node_id": "python-5-1175" + "node_id": "python-5-1175", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1341" + "node_id": "python-4-1341", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -820,28 +1046,36 @@ "创建神经网络块": { "keywords": [], "children": [], - "node_id": "python-5-1176" + "node_id": "python-5-1176", + "keywords_must": [], + "keywords_forbid": [] } }, { "TensorFlow介绍": { "keywords": [], "children": [], - "node_id": "python-5-1177" + "node_id": "python-5-1177", + "keywords_must": [], + "keywords_forbid": [] } }, { "MNIST数据集介绍": { "keywords": [], "children": [], - "node_id": "python-5-1178" + "node_id": "python-5-1178", + "keywords_must": [], + "keywords_forbid": [] } }, { "Keras深度学习库概述": { "keywords": [], "children": [], - "node_id": "python-5-1179" + "node_id": "python-5-1179", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -852,50 +1086,66 @@ "训练和测试数据的检索": { "keywords": [], "children": [], - "node_id": "python-6-178" + "node_id": "python-6-178", + "keywords_must": [], + "keywords_forbid": [] } }, { "训练数据的可视化": { "keywords": [], "children": [], - "node_id": "python-6-179" + "node_id": "python-6-179", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建神经网络": { "keywords": [], "children": [], - "node_id": "python-6-180" + "node_id": "python-6-180", + "keywords_must": [], + "keywords_forbid": [] } }, { "训练神经网络": { "keywords": [], "children": [], - "node_id": "python-6-181" + "node_id": "python-6-181", + "keywords_must": [], + "keywords_forbid": [] } }, { "测试": { "keywords": [], "children": [], - "node_id": "python-6-182" + "node_id": "python-6-182", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1180" + "node_id": "python-5-1180", + "keywords_must": [], + "keywords_forbid": [] } }, { "理解反向传播": { "keywords": [], "children": [], - "node_id": "python-5-1181" + "node_id": "python-5-1181", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1342" + "node_id": "python-4-1342", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -906,7 +1156,9 @@ "CNN历史": { "keywords": [], "children": [], - "node_id": "python-5-1182" + "node_id": "python-5-1182", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -917,50 +1169,66 @@ "计算机如何解释图像": { "keywords": [], "children": [], - "node_id": "python-6-183" + "node_id": "python-6-183", + "keywords_must": [], + "keywords_forbid": [] } }, { "编码实现图像可视化": { "keywords": [], "children": [], - "node_id": "python-6-184" + "node_id": "python-6-184", + "keywords_must": [], + "keywords_forbid": [] } }, { "dropout": { "keywords": [], "children": [], - "node_id": "python-6-185" + "node_id": "python-6-185", + "keywords_must": [], + "keywords_forbid": [] } }, { "输入层": { "keywords": [], "children": [], - "node_id": "python-6-186" + "node_id": "python-6-186", + "keywords_must": [], + "keywords_forbid": [] } }, { "卷积层": { "keywords": [], "children": [], - "node_id": "python-6-187" + "node_id": "python-6-187", + "keywords_must": [], + "keywords_forbid": [] } }, { "池化层": { "keywords": [], "children": [], - "node_id": "python-6-188" + "node_id": "python-6-188", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1183" + "node_id": "python-5-1183", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1343" + "node_id": "python-4-1343", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -975,18 +1243,24 @@ "卷积操作": { "keywords": [], "children": [], - "node_id": "python-6-189" + "node_id": "python-6-189", + "keywords_must": [], + "keywords_forbid": [] } }, { "池化、步长和填充操作": { "keywords": [], "children": [], - "node_id": "python-6-190" + "node_id": "python-6-190", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1184" + "node_id": "python-5-1184", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -997,18 +1271,24 @@ "在TensorFlow中应用池化操作": { "keywords": [], "children": [], - "node_id": "python-6-191" + "node_id": "python-6-191", + "keywords_must": [], + "keywords_forbid": [] } }, { "TensorFlow中的卷积操作": { "keywords": [], "children": [], - "node_id": "python-6-192" + "node_id": "python-6-192", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1185" + "node_id": "python-5-1185", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1019,25 +1299,33 @@ "初始化权重和偏置": { "keywords": [], "children": [], - "node_id": "python-6-193" + "node_id": "python-6-193", + "keywords_must": [], + "keywords_forbid": [] } }, { "正则化": { "keywords": [], "children": [], - "node_id": "python-6-194" + "node_id": "python-6-194", + "keywords_must": [], + "keywords_forbid": [] } }, { "激活函数": { "keywords": [], "children": [], - "node_id": "python-6-195" + "node_id": "python-6-195", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1186" + "node_id": "python-5-1186", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1048,78 +1336,102 @@ "隐含层数量": { "keywords": [], "children": [], - "node_id": "python-6-196" + "node_id": "python-6-196", + "keywords_must": [], + "keywords_forbid": [] } }, { "每个隐含层的神经元个数": { "keywords": [], "children": [], - "node_id": "python-6-197" + "node_id": "python-6-197", + "keywords_must": [], + "keywords_forbid": [] } }, { "批标准化": { "keywords": [], "children": [], - "node_id": "python-6-198" + "node_id": "python-6-198", + "keywords_must": [], + "keywords_forbid": [] } }, { "高级正则化及过拟合的避免": { "keywords": [], "children": [], - "node_id": "python-6-199" + "node_id": "python-6-199", + "keywords_must": [], + "keywords_forbid": [] } }, { "运用哪个优化器": { "keywords": [], "children": [], - "node_id": "python-6-200" + "node_id": "python-6-200", + "keywords_must": [], + "keywords_forbid": [] } }, { "内存调优": { "keywords": [], "children": [], - "node_id": "python-6-201" + "node_id": "python-6-201", + "keywords_must": [], + "keywords_forbid": [] } }, { "层的位置调优": { "keywords": [], "children": [], - "node_id": "python-6-202" + "node_id": "python-6-202", + "keywords_must": [], + "keywords_forbid": [] } }, { "综合所有操作创建第二个CNN": { "keywords": [], "children": [], - "node_id": "python-6-203" + "node_id": "python-6-203", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据集描述和预处理": { "keywords": [], "children": [], - "node_id": "python-6-204" + "node_id": "python-6-204", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建CNN模型": { "keywords": [], "children": [], - "node_id": "python-6-205" + "node_id": "python-6-205", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1187" + "node_id": "python-5-1187", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1344" + "node_id": "python-4-1344", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1130,21 +1442,27 @@ "ImageNet介绍": { "keywords": [], "children": [], - "node_id": "python-5-1188" + "node_id": "python-5-1188", + "keywords_must": [], + "keywords_forbid": [] } }, { "AlexNet架构": { "keywords": [], "children": [], - "node_id": "python-5-1189" + "node_id": "python-5-1189", + "keywords_must": [], + "keywords_forbid": [] } }, { "VGGNet架构": { "keywords": [], "children": [], - "node_id": "python-5-1190" + "node_id": "python-5-1190", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1155,29 +1473,39 @@ "架构洞察": { "keywords": [], "children": [], - "node_id": "python-6-206" + "node_id": "python-6-206", + "keywords_must": [], + "keywords_forbid": [] } }, { "inception模块": { "keywords": [], "children": [], - "node_id": "python-6-207" + "node_id": "python-6-207", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1191" + "node_id": "python-5-1191", + "keywords_must": [], + "keywords_forbid": [] } }, { "ResNet架构": { "keywords": [], "children": [], - "node_id": "python-5-1192" + "node_id": "python-5-1192", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1345" + "node_id": "python-4-1345", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1192,50 +1520,66 @@ "目标数据集较小且与原始训练集相似": { "keywords": [], "children": [], - "node_id": "python-6-208" + "node_id": "python-6-208", + "keywords_must": [], + "keywords_forbid": [] } }, { "目标数据集较小且与原始训练集不同": { "keywords": [], "children": [], - "node_id": "python-6-209" + "node_id": "python-6-209", + "keywords_must": [], + "keywords_forbid": [] } }, { "目标数据集很大且与原始训练集相似": { "keywords": [], "children": [], - "node_id": "python-6-210" + "node_id": "python-6-210", + "keywords_must": [], + "keywords_forbid": [] } }, { "目标数据集很大且与原始训练集不同": { "keywords": [], "children": [], - "node_id": "python-6-211" + "node_id": "python-6-211", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1193" + "node_id": "python-5-1193", + "keywords_must": [], + "keywords_forbid": [] } }, { "转移学习示例": { "keywords": [], "children": [], - "node_id": "python-5-1194" + "node_id": "python-5-1194", + "keywords_must": [], + "keywords_forbid": [] } }, { "多任务学习": { "keywords": [], "children": [], - "node_id": "python-5-1195" + "node_id": "python-5-1195", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1346" + "node_id": "python-4-1346", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1246,25 +1590,33 @@ "自编码器介绍": { "keywords": [], "children": [], - "node_id": "python-5-1196" + "node_id": "python-5-1196", + "keywords_must": [], + "keywords_forbid": [] } }, { "卷积自编码器": { "keywords": [], "children": [], - "node_id": "python-5-1197" + "node_id": "python-5-1197", + "keywords_must": [], + "keywords_forbid": [] } }, { "应用": { "keywords": [], "children": [], - "node_id": "python-5-1198" + "node_id": "python-5-1198", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1347" + "node_id": "python-4-1347", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1279,18 +1631,24 @@ "CycleGAN": { "keywords": [], "children": [], - "node_id": "python-6-212" + "node_id": "python-6-212", + "keywords_must": [], + "keywords_forbid": [] } }, { "训练GAN模型": { "keywords": [], "children": [], - "node_id": "python-6-213" + "node_id": "python-6-213", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1199" + "node_id": "python-5-1199", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1301,18 +1659,24 @@ "计算损失": { "keywords": [], "children": [], - "node_id": "python-6-214" + "node_id": "python-6-214", + "keywords_must": [], + "keywords_forbid": [] } }, { "半监督学习和GAN": { "keywords": [], "children": [], - "node_id": "python-6-215" + "node_id": "python-6-215", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1200" + "node_id": "python-5-1200", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1323,22 +1687,30 @@ "基于半监督分类的GAN示例": { "keywords": [], "children": [], - "node_id": "python-6-216" + "node_id": "python-6-216", + "keywords_must": [], + "keywords_forbid": [] } }, { "深度卷积GAN": { "keywords": [], "children": [], - "node_id": "python-6-217" + "node_id": "python-6-217", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1201" + "node_id": "python-5-1201", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1348" + "node_id": "python-4-1348", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1349,7 +1721,9 @@ "图像描述中的注意力机制": { "keywords": [], "children": [], - "node_id": "python-5-1202" + "node_id": "python-5-1202", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1360,18 +1734,24 @@ "硬注意力": { "keywords": [], "children": [], - "node_id": "python-6-218" + "node_id": "python-6-218", + "keywords_must": [], + "keywords_forbid": [] } }, { "软注意力": { "keywords": [], "children": [], - "node_id": "python-6-219" + "node_id": "python-6-219", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1203" + "node_id": "python-5-1203", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1382,31 +1762,47 @@ "视觉CNN模型次优性能的原因": { "keywords": [], "children": [], - "node_id": "python-6-220" + "node_id": "python-6-220", + "keywords_must": [], + "keywords_forbid": [] } }, { "循环视觉注意力模型": { "keywords": [], "children": [], - "node_id": "python-6-221" + "node_id": "python-6-221", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1204" + "node_id": "python-5-1204", + "keywords_must": [], + "keywords_forbid": [] } }, { "参考文献": { "keywords": [], "children": [], - "node_id": "python-5-1205" + "node_id": "python-5-1205", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1349" + "node_id": "python-4-1349", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-247" + "node_id": "python-3-247", + "keywords_must": [ + "计算机视觉", + "CV", + "computer vision" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/4.\350\207\252\347\204\266\350\257\255\350\250\200\345\244\204\347\220\206/config.json" "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/4.\350\207\252\347\204\266\350\257\255\350\250\200\345\244\204\347\220\206/config.json" index f77fe3e..37400a3 100644 --- "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/4.\350\207\252\347\204\266\350\257\255\350\250\200\345\244\204\347\220\206/config.json" +++ "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/4.\350\207\252\347\204\266\350\257\255\350\250\200\345\244\204\347\220\206/config.json" @@ -13,25 +13,33 @@ "自然语言处理的基本概念": { "keywords": [], "children": [], - "node_id": "python-5-1206" + "node_id": "python-5-1206", + "keywords_must": [], + "keywords_forbid": [] } }, { "自然语言处理的面临困难": { "keywords": [], "children": [], - "node_id": "python-5-1207" + "node_id": "python-5-1207", + "keywords_must": [], + "keywords_forbid": [] } }, { "自然语言处理的研究现状": { "keywords": [], "children": [], - "node_id": "python-5-1208" + "node_id": "python-5-1208", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1350" + "node_id": "python-4-1350", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -42,102 +50,132 @@ "概率论基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1209" + "node_id": "python-5-1209", + "keywords_must": [], + "keywords_forbid": [] } }, { "最大似然估计": { "keywords": [], "children": [], - "node_id": "python-5-1210" + "node_id": "python-5-1210", + "keywords_must": [], + "keywords_forbid": [] } }, { "隐马尔可夫模型": { "keywords": [], "children": [], - "node_id": "python-5-1211" + "node_id": "python-5-1211", + "keywords_must": [], + "keywords_forbid": [] } }, { "贝叶斯网络": { "keywords": [], "children": [], - "node_id": "python-5-1212" + "node_id": "python-5-1212", + "keywords_must": [], + "keywords_forbid": [] } }, { "条件概率分布": { "keywords": [], "children": [], - "node_id": "python-5-1213" + "node_id": "python-5-1213", + "keywords_must": [], + "keywords_forbid": [] } }, { "信息论基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1214" + "node_id": "python-5-1214", + "keywords_must": [], + "keywords_forbid": [] } }, { "熵": { "keywords": [], "children": [], - "node_id": "python-5-1215" + "node_id": "python-5-1215", + "keywords_must": [], + "keywords_forbid": [] } }, { "困惑度": { "keywords": [], "children": [], - "node_id": "python-5-1216" + "node_id": "python-5-1216", + "keywords_must": [], + "keywords_forbid": [] } }, { "互信息": { "keywords": [], "children": [], - "node_id": "python-5-1217" + "node_id": "python-5-1217", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1218" + "node_id": "python-5-1218", + "keywords_must": [], + "keywords_forbid": [] } }, { "CRF": { "keywords": [], "children": [], - "node_id": "python-5-1219" + "node_id": "python-5-1219", + "keywords_must": [], + "keywords_forbid": [] } }, { "BiLSTM+Attention": { "keywords": [], "children": [], - "node_id": "python-5-1220" + "node_id": "python-5-1220", + "keywords_must": [], + "keywords_forbid": [] } }, { "迁移学习": { "keywords": [], "children": [], - "node_id": "python-5-1221" + "node_id": "python-5-1221", + "keywords_must": [], + "keywords_forbid": [] } }, { "常用语料库和知识库": { "keywords": [], "children": [], - "node_id": "python-5-1222" + "node_id": "python-5-1222", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1351" + "node_id": "python-4-1351", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -148,39 +186,51 @@ "jieba概述": { "keywords": [], "children": [], - "node_id": "python-5-1223" + "node_id": "python-5-1223", + "keywords_must": [], + "keywords_forbid": [] } }, { "jieba分词": { "keywords": [], "children": [], - "node_id": "python-5-1224" + "node_id": "python-5-1224", + "keywords_must": [], + "keywords_forbid": [] } }, { "jieba添加自定义词典": { "keywords": [], "children": [], - "node_id": "python-5-1225" + "node_id": "python-5-1225", + "keywords_must": [], + "keywords_forbid": [] } }, { "jieba词性标注": { "keywords": [], "children": [], - "node_id": "python-5-1226" + "node_id": "python-5-1226", + "keywords_must": [], + "keywords_forbid": [] } }, { "jieba关键词抽取": { "keywords": [], "children": [], - "node_id": "python-5-1227" + "node_id": "python-5-1227", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1352" + "node_id": "python-4-1352", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -191,60 +241,78 @@ "nltk概述": { "keywords": [], "children": [], - "node_id": "python-5-1228" + "node_id": "python-5-1228", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk字符串处理": { "keywords": [], "children": [], - "node_id": "python-5-1229" + "node_id": "python-5-1229", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk词性标注": { "keywords": [], "children": [], - "node_id": "python-5-1230" + "node_id": "python-5-1230", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk词干提取": { "keywords": [], "children": [], - "node_id": "python-5-1231" + "node_id": "python-5-1231", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk命名实体识别": { "keywords": [], "children": [], - "node_id": "python-5-1232" + "node_id": "python-5-1232", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk分块处理": { "keywords": [], "children": [], - "node_id": "python-5-1233" + "node_id": "python-5-1233", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk文本分类": { "keywords": [], "children": [], - "node_id": "python-5-1234" + "node_id": "python-5-1234", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk情感分析": { "keywords": [], "children": [], - "node_id": "python-5-1235" + "node_id": "python-5-1235", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1353" + "node_id": "python-4-1353", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -255,39 +323,51 @@ "TF-IDF": { "keywords": [], "children": [], - "node_id": "python-5-1236" + "node_id": "python-5-1236", + "keywords_must": [], + "keywords_forbid": [] } }, { "similarities": { "keywords": [], "children": [], - "node_id": "python-5-1237" + "node_id": "python-5-1237", + "keywords_must": [], + "keywords_forbid": [] } }, { "LSA": { "keywords": [], "children": [], - "node_id": "python-5-1238" + "node_id": "python-5-1238", + "keywords_must": [], + "keywords_forbid": [] } }, { "LDA": { "keywords": [], "children": [], - "node_id": "python-5-1239" + "node_id": "python-5-1239", + "keywords_must": [], + "keywords_forbid": [] } }, { "Word2vec": { "keywords": [], "children": [], - "node_id": "python-5-1240" + "node_id": "python-5-1240", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1354" + "node_id": "python-4-1354", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -298,39 +378,51 @@ "分词(英文分词/中文分词)": { "keywords": [], "children": [], - "node_id": "python-5-1241" + "node_id": "python-5-1241", + "keywords_must": [], + "keywords_forbid": [] } }, { "词干提取": { "keywords": [], "children": [], - "node_id": "python-5-1242" + "node_id": "python-5-1242", + "keywords_must": [], + "keywords_forbid": [] } }, { "词形还原": { "keywords": [], "children": [], - "node_id": "python-5-1243" + "node_id": "python-5-1243", + "keywords_must": [], + "keywords_forbid": [] } }, { "词性标注": { "keywords": [], "children": [], - "node_id": "python-5-1244" + "node_id": "python-5-1244", + "keywords_must": [], + "keywords_forbid": [] } }, { "命名实体识别": { "keywords": [], "children": [], - "node_id": "python-5-1245" + "node_id": "python-5-1245", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1355" + "node_id": "python-4-1355", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -341,18 +433,24 @@ "短语结构分析": { "keywords": [], "children": [], - "node_id": "python-5-1246" + "node_id": "python-5-1246", + "keywords_must": [], + "keywords_forbid": [] } }, { "依存句法分析": { "keywords": [], "children": [], - "node_id": "python-5-1247" + "node_id": "python-5-1247", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1356" + "node_id": "python-4-1356", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -363,46 +461,60 @@ "命名实体消歧": { "keywords": [], "children": [], - "node_id": "python-5-1248" + "node_id": "python-5-1248", + "keywords_must": [], + "keywords_forbid": [] } }, { "指代消解": { "keywords": [], "children": [], - "node_id": "python-5-1249" + "node_id": "python-5-1249", + "keywords_must": [], + "keywords_forbid": [] } }, { "语义角色标注": { "keywords": [], "children": [], - "node_id": "python-5-1250" + "node_id": "python-5-1250", + "keywords_must": [], + "keywords_forbid": [] } }, { "语义关系抽取": { "keywords": [], "children": [], - "node_id": "python-5-1251" + "node_id": "python-5-1251", + "keywords_must": [], + "keywords_forbid": [] } }, { "语义依存分析": { "keywords": [], "children": [], - "node_id": "python-5-1252" + "node_id": "python-5-1252", + "keywords_must": [], + "keywords_forbid": [] } }, { "抽象语义表示": { "keywords": [], "children": [], - "node_id": "python-5-1253" + "node_id": "python-5-1253", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1357" + "node_id": "python-4-1357", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -413,46 +525,60 @@ "Word2Vec": { "keywords": [], "children": [], - "node_id": "python-5-1254" + "node_id": "python-5-1254", + "keywords_must": [], + "keywords_forbid": [] } }, { "GloVe": { "keywords": [], "children": [], - "node_id": "python-5-1255" + "node_id": "python-5-1255", + "keywords_must": [], + "keywords_forbid": [] } }, { "fastText": { "keywords": [], "children": [], - "node_id": "python-5-1256" + "node_id": "python-5-1256", + "keywords_must": [], + "keywords_forbid": [] } }, { "ELMo": { "keywords": [], "children": [], - "node_id": "python-5-1257" + "node_id": "python-5-1257", + "keywords_must": [], + "keywords_forbid": [] } }, { "BERT": { "keywords": [], "children": [], - "node_id": "python-5-1258" + "node_id": "python-5-1258", + "keywords_must": [], + "keywords_forbid": [] } }, { "XLNet": { "keywords": [], "children": [], - "node_id": "python-5-1259" + "node_id": "python-5-1259", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1358" + "node_id": "python-4-1358", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -463,32 +589,42 @@ "文本相似度计算": { "keywords": [], "children": [], - "node_id": "python-5-1260" + "node_id": "python-5-1260", + "keywords_must": [], + "keywords_forbid": [] } }, { "文本聚类": { "keywords": [], "children": [], - "node_id": "python-5-1261" + "node_id": "python-5-1261", + "keywords_must": [], + "keywords_forbid": [] } }, { "文本分类": { "keywords": [], "children": [], - "node_id": "python-5-1262" + "node_id": "python-5-1262", + "keywords_must": [], + "keywords_forbid": [] } }, { "文本摘要": { "keywords": [], "children": [], - "node_id": "python-5-1263" + "node_id": "python-5-1263", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1359" + "node_id": "python-4-1359", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -499,18 +635,24 @@ "基于情感词典的情感分析": { "keywords": [], "children": [], - "node_id": "python-5-1264" + "node_id": "python-5-1264", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于深度学习的情感分析": { "keywords": [], "children": [], - "node_id": "python-5-1265" + "node_id": "python-5-1265", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1360" + "node_id": "python-4-1360", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -521,18 +663,24 @@ "LSA": { "keywords": [], "children": [], - "node_id": "python-5-1266" + "node_id": "python-5-1266", + "keywords_must": [], + "keywords_forbid": [] } }, { "LDA": { "keywords": [], "children": [], - "node_id": "python-5-1267" + "node_id": "python-5-1267", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1361" + "node_id": "python-4-1361", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -543,46 +691,60 @@ "IBM统计翻译模型": { "keywords": [], "children": [], - "node_id": "python-5-1268" + "node_id": "python-5-1268", + "keywords_must": [], + "keywords_forbid": [] } }, { "短语抽取": { "keywords": [], "children": [], - "node_id": "python-5-1269" + "node_id": "python-5-1269", + "keywords_must": [], + "keywords_forbid": [] } }, { "语言模型": { "keywords": [], "children": [], - "node_id": "python-5-1270" + "node_id": "python-5-1270", + "keywords_must": [], + "keywords_forbid": [] } }, { "GNMT": { "keywords": [], "children": [], - "node_id": "python-5-1271" + "node_id": "python-5-1271", + "keywords_must": [], + "keywords_forbid": [] } }, { "Seq2Seq": { "keywords": [], "children": [], - "node_id": "python-5-1272" + "node_id": "python-5-1272", + "keywords_must": [], + "keywords_forbid": [] } }, { "Transformer": { "keywords": [], "children": [], - "node_id": "python-5-1273" + "node_id": "python-5-1273", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1362" + "node_id": "python-4-1362", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -593,39 +755,51 @@ "n-gram": { "keywords": [], "children": [], - "node_id": "python-5-1274" + "node_id": "python-5-1274", + "keywords_must": [], + "keywords_forbid": [] } }, { "Pitman-Yor过程模型": { "keywords": [], "children": [], - "node_id": "python-5-1275" + "node_id": "python-5-1275", + "keywords_must": [], + "keywords_forbid": [] } }, { "AWD-LSTM": { "keywords": [], "children": [], - "node_id": "python-5-1276" + "node_id": "python-5-1276", + "keywords_must": [], + "keywords_forbid": [] } }, { "Transformer-XL": { "keywords": [], "children": [], - "node_id": "python-5-1277" + "node_id": "python-5-1277", + "keywords_must": [], + "keywords_forbid": [] } }, { "Gated CNN": { "keywords": [], "children": [], - "node_id": "python-5-1278" + "node_id": "python-5-1278", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1363" + "node_id": "python-4-1363", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -636,32 +810,42 @@ "基于知识的问答": { "keywords": [], "children": [], - "node_id": "python-5-1279" + "node_id": "python-5-1279", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于检索的问答": { "keywords": [], "children": [], - "node_id": "python-5-1280" + "node_id": "python-5-1280", + "keywords_must": [], + "keywords_forbid": [] } }, { "阅读理解": { "keywords": [], "children": [], - "node_id": "python-5-1281" + "node_id": "python-5-1281", + "keywords_must": [], + "keywords_forbid": [] } }, { "完形填空": { "keywords": [], "children": [], - "node_id": "python-5-1282" + "node_id": "python-5-1282", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1364" + "node_id": "python-4-1364", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -672,46 +856,60 @@ "对话行为分类": { "keywords": [], "children": [], - "node_id": "python-5-1283" + "node_id": "python-5-1283", + "keywords_must": [], + "keywords_forbid": [] } }, { "对话状态跟踪": { "keywords": [], "children": [], - "node_id": "python-5-1284" + "node_id": "python-5-1284", + "keywords_must": [], + "keywords_forbid": [] } }, { "检索式聊天机器人": { "keywords": [], "children": [], - "node_id": "python-5-1285" + "node_id": "python-5-1285", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成式聊天机器人": { "keywords": [], "children": [], - "node_id": "python-5-1286" + "node_id": "python-5-1286", + "keywords_must": [], + "keywords_forbid": [] } }, { "意图识别": { "keywords": [], "children": [], - "node_id": "python-5-1287" + "node_id": "python-5-1287", + "keywords_must": [], + "keywords_forbid": [] } }, { "槽填充(Slot Filling)": { "keywords": [], "children": [], - "node_id": "python-5-1288" + "node_id": "python-5-1288", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1365" + "node_id": "python-4-1365", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -722,53 +920,69 @@ "傅里叶变换": { "keywords": [], "children": [], - "node_id": "python-5-1289" + "node_id": "python-5-1289", + "keywords_must": [], + "keywords_forbid": [] } }, { "声学模型": { "keywords": [], "children": [], - "node_id": "python-5-1290" + "node_id": "python-5-1290", + "keywords_must": [], + "keywords_forbid": [] } }, { "隐马尔可夫模型": { "keywords": [], "children": [], - "node_id": "python-5-1291" + "node_id": "python-5-1291", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN": { "keywords": [], "children": [], - "node_id": "python-5-1292" + "node_id": "python-5-1292", + "keywords_must": [], + "keywords_forbid": [] } }, { "LSTM-HMM": { "keywords": [], "children": [], - "node_id": "python-5-1293" + "node_id": "python-5-1293", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络语言模型": { "keywords": [], "children": [], - "node_id": "python-5-1294" + "node_id": "python-5-1294", + "keywords_must": [], + "keywords_forbid": [] } }, { "MFCC": { "keywords": [], "children": [], - "node_id": "python-5-1295" + "node_id": "python-5-1295", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1366" + "node_id": "python-4-1366", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -779,34 +993,50 @@ "知识图谱构建": { "keywords": [], "children": [], - "node_id": "python-5-1296" + "node_id": "python-5-1296", + "keywords_must": [], + "keywords_forbid": [] } }, { "知识计算": { "keywords": [], "children": [], - "node_id": "python-5-1297" + "node_id": "python-5-1297", + "keywords_must": [], + "keywords_forbid": [] } }, { "知识存储": { "keywords": [], "children": [], - "node_id": "python-5-1298" + "node_id": "python-5-1298", + "keywords_must": [], + "keywords_forbid": [] } }, { "知识服务与应用": { "keywords": [], "children": [], - "node_id": "python-5-1299" + "node_id": "python-5-1299", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1367" + "node_id": "python-4-1367", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-248" + "node_id": "python-3-248", + "keywords_must": [ + "自然语言处理", + "NLP", + "natural language processing" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/5.\345\237\272\344\272\216Python\347\232\204\347\233\221\347\235\243\345\255\246\344\271\240/config.json" "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/5.\345\237\272\344\272\216Python\347\232\204\347\233\221\347\235\243\345\255\246\344\271\240/config.json" index 9e03234..4477d45 100644 --- "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/5.\345\237\272\344\272\216Python\347\232\204\347\233\221\347\235\243\345\255\246\344\271\240/config.json" +++ "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/5.\345\237\272\344\272\216Python\347\232\204\347\233\221\347\235\243\345\255\246\344\271\240/config.json" @@ -13,18 +13,24 @@ "相关性分析": { "keywords": [], "children": [], - "node_id": "python-5-1316" + "node_id": "python-5-1316", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1385" + "node_id": "python-4-1385", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Python进行分类": { "keywords": [], "children": [], - "node_id": "python-4-1386" + "node_id": "python-4-1386", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -35,53 +41,69 @@ "哪个属性优先": { "keywords": [], "children": [], - "node_id": "python-5-1317" + "node_id": "python-5-1317", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机森林分类器": { "keywords": [], "children": [], - "node_id": "python-5-1318" + "node_id": "python-5-1318", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1387" + "node_id": "python-4-1387", + "keywords_must": [], + "keywords_forbid": [] } }, { "朴素贝叶斯分类器": { "keywords": [], "children": [], - "node_id": "python-4-1388" + "node_id": "python-4-1388", + "keywords_must": [], + "keywords_forbid": [] } }, { "支持向量机": { "keywords": [], "children": [], - "node_id": "python-4-1389" + "node_id": "python-4-1389", + "keywords_must": [], + "keywords_forbid": [] } }, { "最近邻分类器": { "keywords": [], "children": [], - "node_id": "python-4-1390" + "node_id": "python-4-1390", + "keywords_must": [], + "keywords_forbid": [] } }, { "情绪分析": { "keywords": [], "children": [], - "node_id": "python-4-1391" + "node_id": "python-4-1391", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像识别": { "keywords": [], "children": [], - "node_id": "python-4-1392" + "node_id": "python-4-1392", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -92,34 +114,48 @@ "最小二乘估计": { "keywords": [], "children": [], - "node_id": "python-5-1319" + "node_id": "python-5-1319", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1393" + "node_id": "python-4-1393", + "keywords_must": [], + "keywords_forbid": [] } }, { "分类和回归": { "keywords": [], "children": [], - "node_id": "python-4-1394" + "node_id": "python-4-1394", + "keywords_must": [], + "keywords_forbid": [] } }, { "使模型高估或低估": { "keywords": [], "children": [], - "node_id": "python-4-1395" + "node_id": "python-4-1395", + "keywords_must": [], + "keywords_forbid": [] } }, { "处理分类型数据": { "keywords": [], "children": [], - "node_id": "python-4-1396" + "node_id": "python-4-1396", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-251" + "node_id": "python-3-251", + "keywords_must": [], + "keywords_forbid": [ + "无监督" + ] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/6.\346\227\240\347\233\221\347\235\243\345\255\246\344\271\240\342\200\224\350\201\232\347\261\273/config.json" "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/6.\346\227\240\347\233\221\347\235\243\345\255\246\344\271\240\342\200\224\350\201\232\347\261\273/config.json" index 264ec2d..ef93b22 100644 --- "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/6.\346\227\240\347\233\221\347\235\243\345\255\246\344\271\240\342\200\224\350\201\232\347\261\273/config.json" +++ "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/6.\346\227\240\347\233\221\347\235\243\345\255\246\344\271\240\342\200\224\350\201\232\347\261\273/config.json" @@ -8,14 +8,18 @@ "K均值聚类": { "keywords": [], "children": [], - "node_id": "python-4-1397" + "node_id": "python-4-1397", + "keywords_must": [], + "keywords_forbid": [] } }, { "选择K—肘部法则": { "keywords": [], "children": [], - "node_id": "python-4-1398" + "node_id": "python-4-1398", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -26,48 +30,64 @@ "属性": { "keywords": [], "children": [], - "node_id": "python-5-1320" + "node_id": "python-5-1320", + "keywords_must": [], + "keywords_forbid": [] } }, { "一般及欧氏距离": { "keywords": [], "children": [], - "node_id": "python-5-1321" + "node_id": "python-5-1321", + "keywords_must": [], + "keywords_forbid": [] } }, { "平方欧氏距离": { "keywords": [], "children": [], - "node_id": "python-5-1322" + "node_id": "python-5-1322", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串之间的编辑距离": { "keywords": [], "children": [], - "node_id": "python-5-1323" + "node_id": "python-5-1323", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1399" + "node_id": "python-4-1399", + "keywords_must": [], + "keywords_forbid": [] } }, { "文档上下文的相似性": { "keywords": [], "children": [], - "node_id": "python-4-1400" + "node_id": "python-4-1400", + "keywords_must": [], + "keywords_forbid": [] } }, { "如何判断聚类结果是否良好": { "keywords": [], "children": [], - "node_id": "python-4-1401" + "node_id": "python-4-1401", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-252" + "node_id": "python-3-252", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/config.json" "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/config.json" index 3eb081c..bdf9dac 100644 --- "a/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/config.json" +++ "b/data/3.python\351\253\230\351\230\266/6.\344\272\272\345\267\245\346\231\272\350\203\275/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-15", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/1.\345\207\275\346\225\260/config.json" "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/1.\345\207\275\346\225\260/config.json" index 3e2979e..2bce7fe 100644 --- "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/1.\345\207\275\346\225\260/config.json" +++ "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/1.\345\207\275\346\225\260/config.json" @@ -17,53 +17,69 @@ "规划时的灵活性": { "keywords": [], "children": [], - "node_id": "python-5-1412" + "node_id": "python-5-1412", + "keywords_must": [], + "keywords_forbid": [] } }, { "可变位置参数": { "keywords": [], "children": [], - "node_id": "python-5-1413" + "node_id": "python-5-1413", + "keywords_must": [], + "keywords_forbid": [] } }, { "可变关键字参数": { "keywords": [], "children": [], - "node_id": "python-5-1414" + "node_id": "python-5-1414", + "keywords_must": [], + "keywords_forbid": [] } }, { "组合不同类型的参数": { "keywords": [], "children": [], - "node_id": "python-5-1415" + "node_id": "python-5-1415", + "keywords_must": [], + "keywords_forbid": [] } }, { "调用具有可变参数的函数": { "keywords": [], "children": [], - "node_id": "python-5-1416" + "node_id": "python-5-1416", + "keywords_must": [], + "keywords_forbid": [] } }, { "传递参数": { "keywords": [], "children": [], - "node_id": "python-5-1417" + "node_id": "python-5-1417", + "keywords_must": [], + "keywords_forbid": [] } }, { "自省": { "keywords": [], "children": [], - "node_id": "python-5-1418" + "node_id": "python-5-1418", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1429" + "node_id": "python-4-1429", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -74,32 +90,42 @@ "闭包": { "keywords": [], "children": [], - "node_id": "python-5-1419" + "node_id": "python-5-1419", + "keywords_must": [], + "keywords_forbid": [] } }, { "包装器": { "keywords": [], "children": [], - "node_id": "python-5-1420" + "node_id": "python-5-1420", + "keywords_must": [], + "keywords_forbid": [] } }, { "带参数的装饰器": { "keywords": [], "children": [], - "node_id": "python-5-1421" + "node_id": "python-5-1421", + "keywords_must": [], + "keywords_forbid": [] } }, { "带参数或不带参数的装饰器": { "keywords": [], "children": [], - "node_id": "python-5-1422" + "node_id": "python-5-1422", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1430" + "node_id": "python-4-1430", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -110,32 +136,42 @@ "提取样板": { "keywords": [], "children": [], - "node_id": "python-5-1423" + "node_id": "python-5-1423", + "keywords_must": [], + "keywords_forbid": [] } }, { "用装饰器进行注解": { "keywords": [], "children": [], - "node_id": "python-5-1424" + "node_id": "python-5-1424", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1431" + "node_id": "python-4-1431", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成器": { "keywords": [], "children": [], - "node_id": "python-4-1432" + "node_id": "python-4-1432", + "keywords_must": [], + "keywords_forbid": [] } }, { "lambda": { "keywords": [], "children": [], - "node_id": "python-4-1433" + "node_id": "python-4-1433", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -146,14 +182,18 @@ "标识对象类型": { "keywords": [], "children": [], - "node_id": "python-5-1425" + "node_id": "python-5-1425", + "keywords_must": [], + "keywords_forbid": [] } }, { "模块和软件包": { "keywords": [], "children": [], - "node_id": "python-5-1426" + "node_id": "python-5-1426", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -164,31 +204,43 @@ "描述函数的作用": { "keywords": [], "children": [], - "node_id": "python-6-222" + "node_id": "python-6-222", + "keywords_must": [], + "keywords_forbid": [] } }, { "返回值": { "keywords": [], "children": [], - "node_id": "python-6-223" + "node_id": "python-6-223", + "keywords_must": [], + "keywords_forbid": [] } }, { "包含预期的异常": { "keywords": [], "children": [], - "node_id": "python-6-224" + "node_id": "python-6-224", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1427" + "node_id": "python-5-1427", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1434" + "node_id": "python-4-1434", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-257" + "node_id": "python-3-257", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/2.\347\261\273/config.json" "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/2.\347\261\273/config.json" index 72662b9..1b1e0d5 100644 --- "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/2.\347\261\273/config.json" +++ "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/2.\347\261\273/config.json" @@ -12,32 +12,42 @@ "多重继承": { "keywords": [], "children": [], - "node_id": "python-5-1428" + "node_id": "python-5-1428", + "keywords_must": [], + "keywords_forbid": [] } }, { "方法解析顺序": { "keywords": [], "children": [], - "node_id": "python-5-1429" + "node_id": "python-5-1429", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用super函数将控制权传递给其他类": { "keywords": [], "children": [], - "node_id": "python-5-1430" + "node_id": "python-5-1430", + "keywords_must": [], + "keywords_forbid": [] } }, { "自省": { "keywords": [], "children": [], - "node_id": "python-5-1431" + "node_id": "python-5-1431", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1435" + "node_id": "python-4-1435", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -48,25 +58,33 @@ "在运行时创建类": { "keywords": [], "children": [], - "node_id": "python-5-1432" + "node_id": "python-5-1432", + "keywords_must": [], + "keywords_forbid": [] } }, { "元类": { "keywords": [], "children": [], - "node_id": "python-5-1433" + "node_id": "python-5-1433", + "keywords_must": [], + "keywords_forbid": [] } }, { "控制命名空间": { "keywords": [], "children": [], - "node_id": "python-5-1434" + "node_id": "python-5-1434", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1436" + "node_id": "python-4-1436", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -77,18 +95,24 @@ "属性": { "keywords": [], "children": [], - "node_id": "python-5-1435" + "node_id": "python-5-1435", + "keywords_must": [], + "keywords_forbid": [] } }, { "描述器": { "keywords": [], "children": [], - "node_id": "python-5-1436" + "node_id": "python-5-1436", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1437" + "node_id": "python-4-1437", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -99,18 +123,24 @@ "非绑定方法": { "keywords": [], "children": [], - "node_id": "python-5-1437" + "node_id": "python-5-1437", + "keywords_must": [], + "keywords_forbid": [] } }, { "绑定方法": { "keywords": [], "children": [], - "node_id": "python-5-1438" + "node_id": "python-5-1438", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1438" + "node_id": "python-4-1438", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -121,7 +151,9 @@ "处理成员变量": { "keywords": [], "children": [], - "node_id": "python-5-1439" + "node_id": "python-5-1439", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -136,18 +168,24 @@ "借助chr和ord进行简单的转换": { "keywords": [], "children": [], - "node_id": "python-7-34" + "node_id": "python-7-34", + "keywords_must": [], + "keywords_forbid": [] } }, { "借助struct模块进行复杂的转换": { "keywords": [], "children": [], - "node_id": "python-7-35" + "node_id": "python-7-35", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-225" + "node_id": "python-6-225", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -158,25 +196,33 @@ "Unicode": { "keywords": [], "children": [], - "node_id": "python-7-36" + "node_id": "python-7-36", + "keywords_must": [], + "keywords_forbid": [] } }, { "编码": { "keywords": [], "children": [], - "node_id": "python-7-37" + "node_id": "python-7-37", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-226" + "node_id": "python-6-226", + "keywords_must": [], + "keywords_forbid": [] } }, { "简单的替换": { "keywords": [], "children": [], - "node_id": "python-6-227" + "node_id": "python-6-227", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -187,49 +233,67 @@ "在对象中查找值": { "keywords": [], "children": [], - "node_id": "python-7-38" + "node_id": "python-7-38", + "keywords_must": [], + "keywords_forbid": [] } }, { "区分字符串类型": { "keywords": [], "children": [], - "node_id": "python-7-39" + "node_id": "python-7-39", + "keywords_must": [], + "keywords_forbid": [] } }, { "标准格式规范": { "keywords": [], "children": [], - "node_id": "python-7-40" + "node_id": "python-7-40", + "keywords_must": [], + "keywords_forbid": [] } }, { "为文本文档制作目录": { "keywords": [], "children": [], - "node_id": "python-7-41" + "node_id": "python-7-41", + "keywords_must": [], + "keywords_forbid": [] } }, { "自定义格式规范": { "keywords": [], "children": [], - "node_id": "python-7-42" + "node_id": "python-7-42", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-228" + "node_id": "python-6-228", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1440" + "node_id": "python-5-1440", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1439" + "node_id": "python-4-1439", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-258" + "node_id": "python-3-258", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/3.\347\272\277\347\250\213\350\277\233\347\250\213\345\222\214\345\215\217\347\250\213/config.json" "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/3.\347\272\277\347\250\213\350\277\233\347\250\213\345\222\214\345\215\217\347\250\213/config.json" index 1f47ca1..e6a5182 100644 --- "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/3.\347\272\277\347\250\213\350\277\233\347\250\213\345\222\214\345\215\217\347\250\213/config.json" +++ "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/3.\347\272\277\347\250\213\350\277\233\347\250\213\345\222\214\345\215\217\347\250\213/config.json" @@ -16,44 +16,58 @@ "基础概念": { "keywords": [], "children": [], - "node_id": "python-4-763" + "node_id": "python-4-763", + "keywords_must": [], + "keywords_forbid": [] } }, { "加锁和解锁": { "keywords": [], "children": [], - "node_id": "python-4-764" + "node_id": "python-4-764", + "keywords_must": [], + "keywords_forbid": [] } }, { "threading": { "keywords": [], "children": [], - "node_id": "python-4-765" + "node_id": "python-4-765", + "keywords_must": [], + "keywords_forbid": [] } }, { "multiprocessing": { "keywords": [], "children": [], - "node_id": "python-4-766" + "node_id": "python-4-766", + "keywords_must": [], + "keywords_forbid": [] } }, { "queue": { "keywords": [], "children": [], - "node_id": "python-4-767" + "node_id": "python-4-767", + "keywords_must": [], + "keywords_forbid": [] } }, { "gevent": { "keywords": [], "children": [], - "node_id": "python-4-768" + "node_id": "python-4-768", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-3-132" + "node_id": "python-3-132", + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/4.\347\273\223\346\236\204\345\214\226\346\250\241\345\274\217\345\214\271\351\205\215/config.json" "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/4.\347\273\223\346\236\204\345\214\226\346\250\241\345\274\217\345\214\271\351\205\215/config.json" index 47b4f2b..1aadfe2 100644 --- "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/4.\347\273\223\346\236\204\345\214\226\346\250\241\345\274\217\345\214\271\351\205\215/config.json" +++ "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/4.\347\273\223\346\236\204\345\214\226\346\250\241\345\274\217\345\214\271\351\205\215/config.json" @@ -5,5 +5,10 @@ ], "keywords": [], "children": [], - "node_id": "python-insert-5" + "node_id": "python-insert-5", + "keywords_must": [ + "pattern matching", + "模式匹配" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/5.\346\216\242\347\264\242 Python code object/config.json" "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/5.\346\216\242\347\264\242 Python code object/config.json" index b538912..750bcf3 100644 --- "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/5.\346\216\242\347\264\242 Python code object/config.json" +++ "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/5.\346\216\242\347\264\242 Python code object/config.json" @@ -6,5 +6,11 @@ ], "keywords": [], "children": [], - "node_id": "python-insert-6" + "node_id": "python-insert-6", + "keywords_must": [ + "codeobject", + "代码对象", + "code object" + ], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/config.json" "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/config.json" index 7ea0fa0..e53e296 100644 --- "a/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/config.json" +++ "b/data/3.python\351\253\230\351\230\266/7.\351\253\230\347\272\247\346\225\231\347\250\213/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-2-16", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/8.\350\277\233\351\230\266\344\273\273\345\212\241/1.Python\351\227\256\347\255\224/config.json" "b/data/3.python\351\253\230\351\230\266/8.\350\277\233\351\230\266\344\273\273\345\212\241/1.Python\351\227\256\347\255\224/config.json" index feff932..89b7b78 100644 --- "a/data/3.python\351\253\230\351\230\266/8.\350\277\233\351\230\266\344\273\273\345\212\241/1.Python\351\227\256\347\255\224/config.json" +++ "b/data/3.python\351\253\230\351\230\266/8.\350\277\233\351\230\266\344\273\273\345\212\241/1.Python\351\227\256\347\255\224/config.json" @@ -3,6 +3,8 @@ "keywords": [], "children": [], "export": [ - "qa.json" - ] + "qa.json" + ], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/8.\350\277\233\351\230\266\344\273\273\345\212\241/config.json" "b/data/3.python\351\253\230\351\230\266/8.\350\277\233\351\230\266\344\273\273\345\212\241/config.json" index 4cf781c..f80e4e6 100644 --- "a/data/3.python\351\253\230\351\230\266/8.\350\277\233\351\230\266\344\273\273\345\212\241/config.json" +++ "b/data/3.python\351\253\230\351\230\266/8.\350\277\233\351\230\266\344\273\273\345\212\241/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-1707b1947cba42d99043449208ce4a03", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git "a/data/3.python\351\253\230\351\230\266/config.json" "b/data/3.python\351\253\230\351\230\266/config.json" index 6a4ba4f..ba35be7 100644 --- "a/data/3.python\351\253\230\351\230\266/config.json" +++ "b/data/3.python\351\253\230\351\230\266/config.json" @@ -1,4 +1,6 @@ { "node_id": "python-1-2", - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git a/data/config.json b/data/config.json index 484dfe8..241a217 100644 --- a/data/config.json +++ b/data/config.json @@ -1,5 +1,7 @@ { - "tree_name": "python", - "node_id": "python-0-0", - "keywords": [] + "tree_name": "python", + "node_id": "python-0-0", + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } \ No newline at end of file diff --git a/data/tree.json b/data/tree.json index b8f2fda..6341d14 100644 --- a/data/tree.json +++ b/data/tree.json @@ -16,66 +16,102 @@ { "Python简介": { "node_id": "python-3-0", - "keywords": [], + "keywords": [ + "Python简介" + ], "children": [ { "Python都能做什么": { "keywords": [], "children": [], - "node_id": "python-4-0" + "node_id": "python-4-0", + "keywords_must": [], + "keywords_forbid": [] } }, { "python起源和发展": { "keywords": [], "children": [], - "node_id": "python-insert-2" + "node_id": "python-insert-2", + "keywords_must": [], + "keywords_forbid": [] } }, { "python语言特点": { "keywords": [], "children": [], - "node_id": "python-insert-3" + "node_id": "python-insert-3", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } }, { "程序设计思想": { "node_id": "python-3-1", - "keywords": [], - "children": [] + "keywords": [ + "程序设计思想" + ], + "children": [], + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } }, { "安装Python": { "node_id": "python-3-2", - "keywords": [], + "keywords": [ + "安装" + ], "children": [ { "Windows安装Python": { - "keywords": [], + "keywords": [ + "Windows" + ], "children": [], - "node_id": "python-4-1" + "node_id": "python-4-1", + "keywords_must": [], + "keywords_forbid": [] } }, { "Linux安装Python": { - "keywords": [], + "keywords": [ + "Linux" + ], "children": [], - "node_id": "python-4-2" + "node_id": "python-4-2", + "keywords_must": [], + "keywords_forbid": [] } }, { "MacOS安装Python": { - "keywords": [], + "keywords": [ + "MacOS" + ], "children": [], - "node_id": "python-4-3" + "node_id": "python-4-3", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } }, { @@ -87,17 +123,25 @@ "以交互方式运行": { "keywords": [], "children": [], - "node_id": "python-4-4" + "node_id": "python-4-4", + "keywords_must": [], + "keywords_forbid": [] } }, { "以脚本方式运行": { "keywords": [], "children": [], - "node_id": "python-4-5" + "node_id": "python-4-5", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } }, { @@ -109,136 +153,180 @@ "typing --- 类型提示支持": { "keywords": [], "children": [], - "node_id": "python-4-6" + "node_id": "python-4-6", + "keywords_must": [], + "keywords_forbid": [] } }, { "pydoc --- 文档生成器和在线帮助系统": { "keywords": [], "children": [], - "node_id": "python-4-7" + "node_id": "python-4-7", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python Development Mode": { "keywords": [], "children": [], - "node_id": "python-4-8" + "node_id": "python-4-8", + "keywords_must": [], + "keywords_forbid": [] } }, { "Effects of the Python Development Mode": { "keywords": [], "children": [], - "node_id": "python-4-9" + "node_id": "python-4-9", + "keywords_must": [], + "keywords_forbid": [] } }, { "ResourceWarning Example": { "keywords": [], "children": [], - "node_id": "python-4-10" + "node_id": "python-4-10", + "keywords_must": [], + "keywords_forbid": [] } }, { "Bad file descriptor error example": { "keywords": [], "children": [], - "node_id": "python-4-11" + "node_id": "python-4-11", + "keywords_must": [], + "keywords_forbid": [] } }, { "doctest --- 测试交互性的Python示例": { "keywords": [], "children": [], - "node_id": "python-4-12" + "node_id": "python-4-12", + "keywords_must": [], + "keywords_forbid": [] } }, { "unittest --- 单元测试框架": { "keywords": [], "children": [], - "node_id": "python-4-13" + "node_id": "python-4-13", + "keywords_must": [], + "keywords_forbid": [] } }, { "unittest.mock --- mock对象库": { "keywords": [], "children": [], - "node_id": "python-4-14" + "node_id": "python-4-14", + "keywords_must": [], + "keywords_forbid": [] } }, { "unittest.mock上手指南": { "keywords": [], "children": [], - "node_id": "python-4-15" + "node_id": "python-4-15", + "keywords_must": [], + "keywords_forbid": [] } }, { "2to3 - 自动将Python 2 代码转为Python 3 代码": { "keywords": [], "children": [], - "node_id": "python-4-16" + "node_id": "python-4-16", + "keywords_must": [], + "keywords_forbid": [] } }, { "test --- Python回归测试包": { "keywords": [], "children": [], - "node_id": "python-4-17" + "node_id": "python-4-17", + "keywords_must": [], + "keywords_forbid": [] } }, { "test.support --- Utilities for the Python test suite": { "keywords": [], "children": [], - "node_id": "python-4-18" + "node_id": "python-4-18", + "keywords_must": [], + "keywords_forbid": [] } }, { "test.support.socket_helper --- Utilities for socket tests": { "keywords": [], "children": [], - "node_id": "python-4-19" + "node_id": "python-4-19", + "keywords_must": [], + "keywords_forbid": [] } }, { "test.support.script_helper --- Utilities for the Python execution tests": { "keywords": [], "children": [], - "node_id": "python-4-20" + "node_id": "python-4-20", + "keywords_must": [], + "keywords_forbid": [] } }, { "test.support.bytecode_helper --- Support tools for testing correct bytecode generation": { "keywords": [], "children": [], - "node_id": "python-4-21" + "node_id": "python-4-21", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用PyCharm开发Python": { "keywords": [], "children": [], - "node_id": "python-insert-0" + "node_id": "python-insert-0", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用VSCode开发Python": { "keywords": [], "children": [], - "node_id": "python-insert-1" + "node_id": "python-insert-1", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } }, { "编码规范": { "node_id": "python-3-5", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "python" + ], + "keywords_forbid": [] } }, { @@ -250,13 +338,19 @@ "pip": { "keywords": [], "children": [], - "node_id": "python-4-22" + "node_id": "python-4-22", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -273,10 +367,14 @@ "建议使用4个空格": { "keywords": [], "children": [], - "node_id": "python-4-23" + "node_id": "python-4-23", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -292,25 +390,33 @@ "迭代": { "keywords": [], "children": [], - "node_id": "python-5-1358" + "node_id": "python-5-1358", + "keywords_must": [], + "keywords_forbid": [] } }, { "缓存": { "keywords": [], "children": [], - "node_id": "python-5-1359" + "node_id": "python-5-1359", + "keywords_must": [], + "keywords_forbid": [] } }, { "透明度": { "keywords": [], "children": [], - "node_id": "python-5-1360" + "node_id": "python-5-1360", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1423" + "node_id": "python-4-1423", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -321,53 +427,69 @@ "捕获异常": { "keywords": [], "children": [], - "node_id": "python-5-1361" + "node_id": "python-5-1361", + "keywords_must": [], + "keywords_forbid": [] } }, { "异常链": { "keywords": [], "children": [], - "node_id": "python-5-1362" + "node_id": "python-5-1362", + "keywords_must": [], + "keywords_forbid": [] } }, { "当一切顺利的时候": { "keywords": [], "children": [], - "node_id": "python-5-1363" + "node_id": "python-5-1363", + "keywords_must": [], + "keywords_forbid": [] } }, { "继续执行,无论异常如何": { "keywords": [], "children": [], - "node_id": "python-5-1364" + "node_id": "python-5-1364", + "keywords_must": [], + "keywords_forbid": [] } }, { "优化循环": { "keywords": [], "children": [], - "node_id": "python-5-1365" + "node_id": "python-5-1365", + "keywords_must": [], + "keywords_forbid": [] } }, { "with语句": { "keywords": [], "children": [], - "node_id": "python-5-1366" + "node_id": "python-5-1366", + "keywords_must": [], + "keywords_forbid": [] } }, { "条件表达式": { "keywords": [], "children": [], - "node_id": "python-5-1367" + "node_id": "python-5-1367", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1424" + "node_id": "python-4-1424", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -378,53 +500,69 @@ "序列解包": { "keywords": [], "children": [], - "node_id": "python-5-1368" + "node_id": "python-5-1368", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表解析式": { "keywords": [], "children": [], - "node_id": "python-5-1369" + "node_id": "python-5-1369", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成器表达式": { "keywords": [], "children": [], - "node_id": "python-5-1370" + "node_id": "python-5-1370", + "keywords_must": [], + "keywords_forbid": [] } }, { "集合解析式": { "keywords": [], "children": [], - "node_id": "python-5-1371" + "node_id": "python-5-1371", + "keywords_must": [], + "keywords_forbid": [] } }, { "字典解析式": { "keywords": [], "children": [], - "node_id": "python-5-1372" + "node_id": "python-5-1372", + "keywords_must": [], + "keywords_forbid": [] } }, { "将迭代器链接在一起": { "keywords": [], "children": [], - "node_id": "python-5-1373" + "node_id": "python-5-1373", + "keywords_must": [], + "keywords_forbid": [] } }, { "将迭代器压缩在一起": { "keywords": [], "children": [], - "node_id": "python-5-1374" + "node_id": "python-5-1374", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1425" + "node_id": "python-4-1425", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -435,32 +573,42 @@ "集合": { "keywords": [], "children": [], - "node_id": "python-5-1375" + "node_id": "python-5-1375", + "keywords_must": [], + "keywords_forbid": [] } }, { "命名元组": { "keywords": [], "children": [], - "node_id": "python-5-1376" + "node_id": "python-5-1376", + "keywords_must": [], + "keywords_forbid": [] } }, { "有序字典": { "keywords": [], "children": [], - "node_id": "python-5-1377" + "node_id": "python-5-1377", + "keywords_must": [], + "keywords_forbid": [] } }, { "带有默认值的字典": { "keywords": [], "children": [], - "node_id": "python-5-1378" + "node_id": "python-5-1378", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1426" + "node_id": "python-4-1426", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -471,46 +619,60 @@ "回退(备用)导入": { "keywords": [], "children": [], - "node_id": "python-5-1379" + "node_id": "python-5-1379", + "keywords_must": [], + "keywords_forbid": [] } }, { "从即将发布的版本中导入": { "keywords": [], "children": [], - "node_id": "python-5-1380" + "node_id": "python-5-1380", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用__all__进行自定义导入": { "keywords": [], "children": [], - "node_id": "python-5-1381" + "node_id": "python-5-1381", + "keywords_must": [], + "keywords_forbid": [] } }, { "相对导入": { "keywords": [], "children": [], - "node_id": "python-5-1382" + "node_id": "python-5-1382", + "keywords_must": [], + "keywords_forbid": [] } }, { "__import__函数": { "keywords": [], "children": [], - "node_id": "python-5-1383" + "node_id": "python-5-1383", + "keywords_must": [], + "keywords_forbid": [] } }, { "importlib模块": { "keywords": [], "children": [], - "node_id": "python-5-1384" + "node_id": "python-5-1384", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1427" + "node_id": "python-4-1427", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -521,196 +683,254 @@ "如何安装NIST信标库": { "keywords": [], "children": [], - "node_id": "python-5-1385" + "node_id": "python-5-1385", + "keywords_must": [], + "keywords_forbid": [] } }, { "示例:获取值": { "keywords": [], "children": [], - "node_id": "python-5-1386" + "node_id": "python-5-1386", + "keywords_must": [], + "keywords_forbid": [] } }, { "示例:模拟抛硬币并记录每次正反面的结果": { "keywords": [], "children": [], - "node_id": "python-5-1387" + "node_id": "python-5-1387", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装Pandas和matplotlib": { "keywords": [], "children": [], - "node_id": "python-5-1388" + "node_id": "python-5-1388", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建文本文件": { "keywords": [], "children": [], - "node_id": "python-5-1389" + "node_id": "python-5-1389", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Pandas显示数据": { "keywords": [], "children": [], - "node_id": "python-5-1390" + "node_id": "python-5-1390", + "keywords_must": [], + "keywords_forbid": [] } }, { "进行一些数据分析": { "keywords": [], "children": [], - "node_id": "python-5-1391" + "node_id": "python-5-1391", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用matplotlib进行绘图": { "keywords": [], "children": [], - "node_id": "python-5-1392" + "node_id": "python-5-1392", + "keywords_must": [], + "keywords_forbid": [] } }, { "图表的类型": { "keywords": [], "children": [], - "node_id": "python-5-1393" + "node_id": "python-5-1393", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装Scrapy": { "keywords": [], "children": [], - "node_id": "python-5-1394" + "node_id": "python-5-1394", + "keywords_must": [], + "keywords_forbid": [] } }, { "运行Scrapy": { "keywords": [], "children": [], - "node_id": "python-5-1395" + "node_id": "python-5-1395", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Scrapy获取Web数据": { "keywords": [], "children": [], - "node_id": "python-5-1396" + "node_id": "python-5-1396", + "keywords_must": [], + "keywords_forbid": [] } }, { "通过Scrapy浏览网页": { "keywords": [], "children": [], - "node_id": "python-5-1397" + "node_id": "python-5-1397", + "keywords_must": [], + "keywords_forbid": [] } }, { "shell选项": { "keywords": [], "children": [], - "node_id": "python-5-1398" + "node_id": "python-5-1398", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装Beautiful Soup": { "keywords": [], "children": [], - "node_id": "python-5-1399" + "node_id": "python-5-1399", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Beautiful Soup": { "keywords": [], "children": [], - "node_id": "python-5-1400" + "node_id": "python-5-1400", + "keywords_must": [], + "keywords_forbid": [] } }, { "如何安装feedparser库": { "keywords": [], "children": [], - "node_id": "python-5-1401" + "node_id": "python-5-1401", + "keywords_must": [], + "keywords_forbid": [] } }, { "如何使用feedparser库": { "keywords": [], "children": [], - "node_id": "python-5-1402" + "node_id": "python-5-1402", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装NumPy": { "keywords": [], "children": [], - "node_id": "python-5-1403" + "node_id": "python-5-1403", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用NumPy": { "keywords": [], "children": [], - "node_id": "python-5-1404" + "node_id": "python-5-1404", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用NumPy数组": { "keywords": [], "children": [], - "node_id": "python-5-1405" + "node_id": "python-5-1405", + "keywords_must": [], + "keywords_forbid": [] } }, { "统计度量": { "keywords": [], "children": [], - "node_id": "python-5-1406" + "node_id": "python-5-1406", + "keywords_must": [], + "keywords_forbid": [] } }, { "如何安装Pillow库": { "keywords": [], "children": [], - "node_id": "python-5-1407" + "node_id": "python-5-1407", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像显示:确定文件的大小和类型并显示": { "keywords": [], "children": [], - "node_id": "python-5-1408" + "node_id": "python-5-1408", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像处理:裁剪图像的一部分": { "keywords": [], "children": [], - "node_id": "python-5-1409" + "node_id": "python-5-1409", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机数": { "keywords": [], "children": [], - "node_id": "python-5-1410" + "node_id": "python-5-1410", + "keywords_must": [], + "keywords_forbid": [] } }, { "密码生成器": { "keywords": [], "children": [], - "node_id": "python-5-1411" + "node_id": "python-5-1411", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1428" + "node_id": "python-4-1428", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -722,84 +942,108 @@ "函数定义def": { "keywords": [], "children": [], - "node_id": "python-4-38" + "node_id": "python-4-38", + "keywords_must": [], + "keywords_forbid": [] } }, { "参数var": { "keywords": [], "children": [], - "node_id": "python-4-39" + "node_id": "python-4-39", + "keywords_must": [], + "keywords_forbid": [] } }, { "返回值return": { "keywords": [], "children": [], - "node_id": "python-4-40" + "node_id": "python-4-40", + "keywords_must": [], + "keywords_forbid": [] } }, { "参数传递": { "keywords": [], "children": [], - "node_id": "python-4-41" + "node_id": "python-4-41", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数调用": { "keywords": [], "children": [], - "node_id": "python-4-42" + "node_id": "python-4-42", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数递归": { "keywords": [], "children": [], - "node_id": "python-4-43" + "node_id": "python-4-43", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数编写风格": { "keywords": [], "children": [], - "node_id": "python-4-44" + "node_id": "python-4-44", + "keywords_must": [], + "keywords_forbid": [] } }, { "调用函数": { "keywords": [], "children": [], - "node_id": "python-4-45" + "node_id": "python-4-45", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数的参数": { "keywords": [], "children": [], - "node_id": "python-4-46" + "node_id": "python-4-46", + "keywords_must": [], + "keywords_forbid": [] } }, { "递归函数": { "keywords": [], "children": [], - "node_id": "python-4-47" + "node_id": "python-4-47", + "keywords_must": [], + "keywords_forbid": [] } }, { "None值": { "keywords": [], "children": [], - "node_id": "python-4-48" + "node_id": "python-4-48", + "keywords_must": [], + "keywords_forbid": [] } }, { "调用栈": { "keywords": [], "children": [], - "node_id": "python-4-49" + "node_id": "python-4-49", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -810,81 +1054,105 @@ "局部变量不能在全局作用域内使用": { "keywords": [], "children": [], - "node_id": "python-5-25" + "node_id": "python-5-25", + "keywords_must": [], + "keywords_forbid": [] } }, { "局部作用域不能使用其他局部作用域内的变量": { "keywords": [], "children": [], - "node_id": "python-5-26" + "node_id": "python-5-26", + "keywords_must": [], + "keywords_forbid": [] } }, { "全局变量可以在局部作用域中读取": { "keywords": [], "children": [], - "node_id": "python-5-27" + "node_id": "python-5-27", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-50" + "node_id": "python-4-50", + "keywords_must": [], + "keywords_forbid": [] } }, { "异常处理": { "keywords": [], "children": [], - "node_id": "python-4-51" + "node_id": "python-4-51", + "keywords_must": [], + "keywords_forbid": [] } }, { "把函数视作对象": { "keywords": [], "children": [], - "node_id": "python-4-52" + "node_id": "python-4-52", + "keywords_must": [], + "keywords_forbid": [] } }, { "可调用对象": { "keywords": [], "children": [], - "node_id": "python-4-53" + "node_id": "python-4-53", + "keywords_must": [], + "keywords_forbid": [] } }, { "用户定义的可调用类型": { "keywords": [], "children": [], - "node_id": "python-4-54" + "node_id": "python-4-54", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数内省": { "keywords": [], "children": [], - "node_id": "python-4-55" + "node_id": "python-4-55", + "keywords_must": [], + "keywords_forbid": [] } }, { "从定位参数到仅限关键字参数": { "keywords": [], "children": [], - "node_id": "python-4-56" + "node_id": "python-4-56", + "keywords_must": [], + "keywords_forbid": [] } }, { "获取关于参数的信息": { "keywords": [], "children": [], - "node_id": "python-4-57" + "node_id": "python-4-57", + "keywords_must": [], + "keywords_forbid": [] } }, { "支持函数式编程的包": { "keywords": [], "children": [], - "node_id": "python-4-58" + "node_id": "python-4-58", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -895,39 +1163,51 @@ "位置实参": { "keywords": [], "children": [], - "node_id": "python-5-28" + "node_id": "python-5-28", + "keywords_must": [], + "keywords_forbid": [] } }, { "关键字实参": { "keywords": [], "children": [], - "node_id": "python-5-29" + "node_id": "python-5-29", + "keywords_must": [], + "keywords_forbid": [] } }, { "默认值": { "keywords": [], "children": [], - "node_id": "python-5-30" + "node_id": "python-5-30", + "keywords_must": [], + "keywords_forbid": [] } }, { "等效的函数调用": { "keywords": [], "children": [], - "node_id": "python-5-31" + "node_id": "python-5-31", + "keywords_must": [], + "keywords_forbid": [] } }, { "避免实参错误": { "keywords": [], "children": [], - "node_id": "python-5-32" + "node_id": "python-5-32", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-59" + "node_id": "python-4-59", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -938,25 +1218,33 @@ "返回简单值": { "keywords": [], "children": [], - "node_id": "python-5-33" + "node_id": "python-5-33", + "keywords_must": [], + "keywords_forbid": [] } }, { "让实参变成可选的": { "keywords": [], "children": [], - "node_id": "python-5-34" + "node_id": "python-5-34", + "keywords_must": [], + "keywords_forbid": [] } }, { "返回字典": { "keywords": [], "children": [], - "node_id": "python-5-35" + "node_id": "python-5-35", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-60" + "node_id": "python-4-60", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -967,18 +1255,24 @@ "在函数中修改列表": { "keywords": [], "children": [], - "node_id": "python-5-36" + "node_id": "python-5-36", + "keywords_must": [], + "keywords_forbid": [] } }, { "禁止函数修改列表": { "keywords": [], "children": [], - "node_id": "python-5-37" + "node_id": "python-5-37", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-61" + "node_id": "python-4-61", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -989,133 +1283,173 @@ "使用任意数量的关键字实参": { "keywords": [], "children": [], - "node_id": "python-5-38" + "node_id": "python-5-38", + "keywords_must": [], + "keywords_forbid": [] } }, { "导入特定的函数": { "keywords": [], "children": [], - "node_id": "python-5-39" + "node_id": "python-5-39", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用as给函数指定别名": { "keywords": [], "children": [], - "node_id": "python-5-40" + "node_id": "python-5-40", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用as给模块指定别名": { "keywords": [], "children": [], - "node_id": "python-5-41" + "node_id": "python-5-41", + "keywords_must": [], + "keywords_forbid": [] } }, { "导入模块中的所有函数": { "keywords": [], "children": [], - "node_id": "python-5-42" + "node_id": "python-5-42", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-62" + "node_id": "python-4-62", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数编写指南": { "keywords": [], "children": [], - "node_id": "python-4-63" + "node_id": "python-4-63", + "keywords_must": [], + "keywords_forbid": [] } }, { "编写可接受任意数量参数的函数": { "keywords": [], "children": [], - "node_id": "python-4-64" + "node_id": "python-4-64", + "keywords_must": [], + "keywords_forbid": [] } }, { "编写只接受关键字参数的函数": { "keywords": [], "children": [], - "node_id": "python-4-65" + "node_id": "python-4-65", + "keywords_must": [], + "keywords_forbid": [] } }, { "将元数据信息附加到函数参数上": { "keywords": [], "children": [], - "node_id": "python-4-66" + "node_id": "python-4-66", + "keywords_must": [], + "keywords_forbid": [] } }, { "从函数中返回多个值": { "keywords": [], "children": [], - "node_id": "python-4-67" + "node_id": "python-4-67", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义带有默认参数的函数": { "keywords": [], "children": [], - "node_id": "python-4-68" + "node_id": "python-4-68", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义匿名或内联函数": { "keywords": [], "children": [], - "node_id": "python-4-69" + "node_id": "python-4-69", + "keywords_must": [], + "keywords_forbid": [] } }, { "在匿名函数中绑定变量的值": { "keywords": [], "children": [], - "node_id": "python-4-70" + "node_id": "python-4-70", + "keywords_must": [], + "keywords_forbid": [] } }, { "让带有N个参数的可调用对象以较少的参数形式调用": { "keywords": [], "children": [], - "node_id": "python-4-71" + "node_id": "python-4-71", + "keywords_must": [], + "keywords_forbid": [] } }, { "用函数替代只有单个方法的类": { "keywords": [], "children": [], - "node_id": "python-4-72" + "node_id": "python-4-72", + "keywords_must": [], + "keywords_forbid": [] } }, { "在回调函数中携带额外的状态": { "keywords": [], "children": [], - "node_id": "python-4-73" + "node_id": "python-4-73", + "keywords_must": [], + "keywords_forbid": [] } }, { "内联回调函数": { "keywords": [], "children": [], - "node_id": "python-4-74" + "node_id": "python-4-74", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问定义在闭包内的变量": { "keywords": [], "children": [], - "node_id": "python-4-75" + "node_id": "python-4-75", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1127,21 +1461,27 @@ "类定义class": { "keywords": [], "children": [], - "node_id": "python-4-76" + "node_id": "python-4-76", + "keywords_must": [], + "keywords_forbid": [] } }, { "作用域和命名空间": { "keywords": [], "children": [], - "node_id": "python-4-77" + "node_id": "python-4-77", + "keywords_must": [], + "keywords_forbid": [] } }, { "对象": { "keywords": [], "children": [], - "node_id": "python-4-78" + "node_id": "python-4-78", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1152,32 +1492,42 @@ "模拟数值类型": { "keywords": [], "children": [], - "node_id": "python-5-43" + "node_id": "python-5-43", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串表示形式": { "keywords": [], "children": [], - "node_id": "python-5-44" + "node_id": "python-5-44", + "keywords_must": [], + "keywords_forbid": [] } }, { "自定义的布尔值": { "keywords": [], "children": [], - "node_id": "python-5-45" + "node_id": "python-5-45", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-79" + "node_id": "python-4-79", + "keywords_must": [], + "keywords_forbid": [] } }, { "类编码风格": { "keywords": [], "children": [], - "node_id": "python-4-80" + "node_id": "python-4-80", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1188,95 +1538,123 @@ "类定义语法": { "keywords": [], "children": [], - "node_id": "python-5-46" + "node_id": "python-5-46", + "keywords_must": [], + "keywords_forbid": [] } }, { "类对象": { "keywords": [], "children": [], - "node_id": "python-5-47" + "node_id": "python-5-47", + "keywords_must": [], + "keywords_forbid": [] } }, { "方法对象": { "keywords": [], "children": [], - "node_id": "python-5-48" + "node_id": "python-5-48", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-81" + "node_id": "python-4-81", + "keywords_must": [], + "keywords_forbid": [] } }, { "补充说明": { "keywords": [], "children": [], - "node_id": "python-4-82" + "node_id": "python-4-82", + "keywords_must": [], + "keywords_forbid": [] } }, { "私有变量": { "keywords": [], "children": [], - "node_id": "python-4-83" + "node_id": "python-4-83", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成器表达式": { "keywords": [], "children": [], - "node_id": "python-4-84" + "node_id": "python-4-84", + "keywords_must": [], + "keywords_forbid": [] } }, { "类到底是什么": { "keywords": [], "children": [], - "node_id": "python-4-85" + "node_id": "python-4-85", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建自定义类": { "keywords": [], "children": [], - "node_id": "python-4-86" + "node_id": "python-4-86", + "keywords_must": [], + "keywords_forbid": [] } }, { "再谈隐藏": { "keywords": [], "children": [], - "node_id": "python-4-87" + "node_id": "python-4-87", + "keywords_must": [], + "keywords_forbid": [] } }, { "类的命名空间": { "keywords": [], "children": [], - "node_id": "python-4-88" + "node_id": "python-4-88", + "keywords_must": [], + "keywords_forbid": [] } }, { "指定超类": { "keywords": [], "children": [], - "node_id": "python-4-89" + "node_id": "python-4-89", + "keywords_must": [], + "keywords_forbid": [] } }, { "深入探讨继承": { "keywords": [], "children": [], - "node_id": "python-4-90" + "node_id": "python-4-90", + "keywords_must": [], + "keywords_forbid": [] } }, { "多个超类": { "keywords": [], "children": [], - "node_id": "python-4-91" + "node_id": "python-4-91", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1287,81 +1665,105 @@ "Python文化中的接口和协议": { "keywords": [], "children": [], - "node_id": "python-5-49" + "node_id": "python-5-49", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python喜欢序列": { "keywords": [], "children": [], - "node_id": "python-5-50" + "node_id": "python-5-50", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用猴子补丁在运行时实现协议": { "keywords": [], "children": [], - "node_id": "python-5-51" + "node_id": "python-5-51", + "keywords_must": [], + "keywords_forbid": [] } }, { "Alex Martelli的水禽": { "keywords": [], "children": [], - "node_id": "python-5-52" + "node_id": "python-5-52", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义抽象基类的子类": { "keywords": [], "children": [], - "node_id": "python-5-53" + "node_id": "python-5-53", + "keywords_must": [], + "keywords_forbid": [] } }, { "标准库中的抽象基类": { "keywords": [], "children": [], - "node_id": "python-5-54" + "node_id": "python-5-54", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义并使用一个抽象基类": { "keywords": [], "children": [], - "node_id": "python-5-55" + "node_id": "python-5-55", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tombola子类的测试方法": { "keywords": [], "children": [], - "node_id": "python-5-56" + "node_id": "python-5-56", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python使用register的方式": { "keywords": [], "children": [], - "node_id": "python-5-57" + "node_id": "python-5-57", + "keywords_must": [], + "keywords_forbid": [] } }, { "鹅的行为有可能像鸭子": { "keywords": [], "children": [], - "node_id": "python-5-58" + "node_id": "python-5-58", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-92" + "node_id": "python-4-92", + "keywords_must": [], + "keywords_forbid": [] } }, { "抽象基类": { "keywords": [], "children": [], - "node_id": "python-4-93" + "node_id": "python-4-93", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1372,56 +1774,79 @@ "导入单个类": { "keywords": [], "children": [], - "node_id": "python-5-59" + "node_id": "python-5-59", + "keywords_must": [], + "keywords_forbid": [] } }, { "在一个模块中存储多个类": { "keywords": [], "children": [], - "node_id": "python-5-60" + "node_id": "python-5-60", + "keywords_must": [], + "keywords_forbid": [] } }, { "从一个模块中导入多个类": { "keywords": [], "children": [], - "node_id": "python-5-61" + "node_id": "python-5-61", + "keywords_must": [], + "keywords_forbid": [] } }, { "导入模块中的所有类": { "keywords": [], "children": [], - "node_id": "python-5-62" + "node_id": "python-5-62", + "keywords_must": [], + "keywords_forbid": [] } }, { "自定义工作流程": { "keywords": [], "children": [], - "node_id": "python-5-63" + "node_id": "python-5-63", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-94" + "node_id": "python-4-94", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python标准库": { "keywords": [], "children": [], - "node_id": "python-4-95" + "node_id": "python-4-95", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "顺序语句结构": { "node_id": "python-3-11", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "顺序语句", + "顺序结构", + "顺序语句结构", + "顺序控制语句" + ], + "keywords_forbid": [] } }, { @@ -1437,21 +1862,27 @@ "if-else语句": { "keywords": [], "children": [], - "node_id": "python-5-64" + "node_id": "python-5-64", + "keywords_must": [], + "keywords_forbid": [] } }, { "if-elif-else结构": { "keywords": [], "children": [], - "node_id": "python-5-65" + "node_id": "python-5-65", + "keywords_must": [], + "keywords_forbid": [] } }, { "省略else代码块": { "keywords": [], "children": [], - "node_id": "python-5-66" + "node_id": "python-5-66", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1462,57 +1893,75 @@ "检查特殊元素": { "keywords": [], "children": [], - "node_id": "python-6-16" + "node_id": "python-6-16", + "keywords_must": [], + "keywords_forbid": [] } }, { "确定列表不是空的": { "keywords": [], "children": [], - "node_id": "python-6-17" + "node_id": "python-6-17", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-67" + "node_id": "python-5-67", + "keywords_must": [], + "keywords_forbid": [] } }, { "设置if语句的格式": { "keywords": [], "children": [], - "node_id": "python-5-68" + "node_id": "python-5-68", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-96" + "node_id": "python-4-96", + "keywords_must": [], + "keywords_forbid": [] } }, { "elif": { "keywords": [], "children": [], - "node_id": "python-4-97" + "node_id": "python-4-97", + "keywords_must": [], + "keywords_forbid": [] } }, { "else": { "keywords": [], "children": [], - "node_id": "python-4-98" + "node_id": "python-4-98", + "keywords_must": [], + "keywords_forbid": [] } }, { "条件判断": { "keywords": [], "children": [], - "node_id": "python-4-99" + "node_id": "python-4-99", + "keywords_must": [], + "keywords_forbid": [] } }, { "这正是布尔值的用武之地": { "keywords": [], "children": [], - "node_id": "python-4-100" + "node_id": "python-4-100", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1523,77 +1972,101 @@ "字典列表": { "keywords": [], "children": [], - "node_id": "python-5-69" + "node_id": "python-5-69", + "keywords_must": [], + "keywords_forbid": [] } }, { "在字典中存储列表": { "keywords": [], "children": [], - "node_id": "python-5-70" + "node_id": "python-5-70", + "keywords_must": [], + "keywords_forbid": [] } }, { "在字典中存储字典": { "keywords": [], "children": [], - "node_id": "python-5-71" + "node_id": "python-5-71", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-101" + "node_id": "python-4-101", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查是否相等": { "keywords": [], "children": [], - "node_id": "python-4-102" + "node_id": "python-4-102", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查是否相等时忽略大小写": { "keywords": [], "children": [], - "node_id": "python-4-103" + "node_id": "python-4-103", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查是否不相等": { "keywords": [], "children": [], - "node_id": "python-4-104" + "node_id": "python-4-104", + "keywords_must": [], + "keywords_forbid": [] } }, { "数值比较": { "keywords": [], "children": [], - "node_id": "python-4-105" + "node_id": "python-4-105", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查多个条件": { "keywords": [], "children": [], - "node_id": "python-4-106" + "node_id": "python-4-106", + "keywords_must": [], + "keywords_forbid": [] } }, { "检查特定值是否包含在列表中": { "keywords": [], "children": [], - "node_id": "python-4-107" + "node_id": "python-4-107", + "keywords_must": [], + "keywords_forbid": [] } }, { "布尔表达式": { "keywords": [], "children": [], - "node_id": "python-4-108" + "node_id": "python-4-108", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1605,66 +2078,86 @@ "for": { "keywords": [], "children": [], - "node_id": "python-4-109" + "node_id": "python-4-109", + "keywords_must": [], + "keywords_forbid": [] } }, { "while": { "keywords": [], "children": [], - "node_id": "python-4-110" + "node_id": "python-4-110", + "keywords_must": [], + "keywords_forbid": [] } }, { "break": { "keywords": [], "children": [], - "node_id": "python-4-111" + "node_id": "python-4-111", + "keywords_must": [], + "keywords_forbid": [] } }, { "continue": { "keywords": [], "children": [], - "node_id": "python-4-112" + "node_id": "python-4-112", + "keywords_must": [], + "keywords_forbid": [] } }, { "循环判断": { "keywords": [], "children": [], - "node_id": "python-4-113" + "node_id": "python-4-113", + "keywords_must": [], + "keywords_forbid": [] } }, { "迭代字典": { "keywords": [], "children": [], - "node_id": "python-4-114" + "node_id": "python-4-114", + "keywords_must": [], + "keywords_forbid": [] } }, { "一些迭代工具": { "keywords": [], "children": [], - "node_id": "python-4-115" + "node_id": "python-4-115", + "keywords_must": [], + "keywords_forbid": [] } }, { "跳出循环": { "keywords": [], "children": [], - "node_id": "python-4-116" + "node_id": "python-4-116", + "keywords_must": [], + "keywords_forbid": [] } }, { "循环中的else子句": { "keywords": [], "children": [], - "node_id": "python-4-117" + "node_id": "python-4-117", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1676,21 +2169,27 @@ "整型": { "keywords": [], "children": [], - "node_id": "python-4-118" + "node_id": "python-4-118", + "keywords_must": [], + "keywords_forbid": [] } }, { "浮点型": { "keywords": [], "children": [], - "node_id": "python-4-119" + "node_id": "python-4-119", + "keywords_must": [], + "keywords_forbid": [] } }, { "布尔型": { "keywords": [], "children": [], - "node_id": "python-4-120" + "node_id": "python-4-120", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1701,35 +2200,45 @@ "单引号字符串以及对引号转义": { "keywords": [], "children": [], - "node_id": "python-5-72" + "node_id": "python-5-72", + "keywords_must": [], + "keywords_forbid": [] } }, { "拼接字符串": { "keywords": [], "children": [], - "node_id": "python-5-73" + "node_id": "python-5-73", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串表示str和repr": { "keywords": [], "children": [], - "node_id": "python-5-74" + "node_id": "python-5-74", + "keywords_must": [], + "keywords_forbid": [] } }, { "长字符串、原始字符串和字节": { "keywords": [], "children": [], - "node_id": "python-5-75" + "node_id": "python-5-75", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串基本操作": { "keywords": [], "children": [], - "node_id": "python-5-76" + "node_id": "python-5-76", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1740,39 +2249,51 @@ "替换字段名": { "keywords": [], "children": [], - "node_id": "python-6-18" + "node_id": "python-6-18", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-77" + "node_id": "python-5-77", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用方法修改字符串的大小写": { "keywords": [], "children": [], - "node_id": "python-5-78" + "node_id": "python-5-78", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用制表符或换行符来添加空白": { "keywords": [], "children": [], - "node_id": "python-5-79" + "node_id": "python-5-79", + "keywords_must": [], + "keywords_forbid": [] } }, { "删除空白": { "keywords": [], "children": [], - "node_id": "python-5-80" + "node_id": "python-5-80", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用字符串时避免语法错误": { "keywords": [], "children": [], - "node_id": "python-5-81" + "node_id": "python-5-81", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1783,130 +2304,170 @@ "使用encode方法编码": { "keywords": [], "children": [], - "node_id": "python-6-19" + "node_id": "python-6-19", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用decode方法解码": { "keywords": [], "children": [], - "node_id": "python-6-20" + "node_id": "python-6-20", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-82" + "node_id": "python-5-82", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-121" + "node_id": "python-4-121", + "keywords_must": [], + "keywords_forbid": [] } }, { "datetime --- 基本的日期和时间类型": { "keywords": [], "children": [], - "node_id": "python-4-122" + "node_id": "python-4-122", + "keywords_must": [], + "keywords_forbid": [] } }, { "zoneinfo --- IANA时区支持": { "keywords": [], "children": [], - "node_id": "python-4-123" + "node_id": "python-4-123", + "keywords_must": [], + "keywords_forbid": [] } }, { "calendar --- 日历相关函数": { "keywords": [], "children": [], - "node_id": "python-4-124" + "node_id": "python-4-124", + "keywords_must": [], + "keywords_forbid": [] } }, { "collections --- 容器数据类型": { "keywords": [], "children": [], - "node_id": "python-4-125" + "node_id": "python-4-125", + "keywords_must": [], + "keywords_forbid": [] } }, { "collections.abc --- 容器的抽象基类": { "keywords": [], "children": [], - "node_id": "python-4-126" + "node_id": "python-4-126", + "keywords_must": [], + "keywords_forbid": [] } }, { "heapq --- 堆队列算法": { "keywords": [], "children": [], - "node_id": "python-4-127" + "node_id": "python-4-127", + "keywords_must": [], + "keywords_forbid": [] } }, { "bisect --- 数组二分查找算法": { "keywords": [], "children": [], - "node_id": "python-4-128" + "node_id": "python-4-128", + "keywords_must": [], + "keywords_forbid": [] } }, { "array --- 高效的数值数组": { "keywords": [], "children": [], - "node_id": "python-4-129" + "node_id": "python-4-129", + "keywords_must": [], + "keywords_forbid": [] } }, { "weakref --- 弱引用": { "keywords": [], "children": [], - "node_id": "python-4-130" + "node_id": "python-4-130", + "keywords_must": [], + "keywords_forbid": [] } }, { "types --- 动态类型创建和内置类型名称": { "keywords": [], "children": [], - "node_id": "python-4-131" + "node_id": "python-4-131", + "keywords_must": [], + "keywords_forbid": [] } }, { "copy --- 浅层 (shallow) 和深层 (deep) 复制操作": { "keywords": [], "children": [], - "node_id": "python-4-132" + "node_id": "python-4-132", + "keywords_must": [], + "keywords_forbid": [] } }, { "pprint --- 数据美化输出": { "keywords": [], "children": [], - "node_id": "python-4-133" + "node_id": "python-4-133", + "keywords_must": [], + "keywords_forbid": [] } }, { "reprlib --- 另一种repr 实现": { "keywords": [], "children": [], - "node_id": "python-4-134" + "node_id": "python-4-134", + "keywords_must": [], + "keywords_forbid": [] } }, { "enum --- 对枚举的支持": { "keywords": [], "children": [], - "node_id": "python-4-135" + "node_id": "python-4-135", + "keywords_must": [], + "keywords_forbid": [] } }, { "graphlib --- Functionality to operate with graph-like structures": { "keywords": [], "children": [], - "node_id": "python-4-136" + "node_id": "python-4-136", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1922,7 +2483,9 @@ "函数list": { "keywords": [], "children": [], - "node_id": "python-5-83" + "node_id": "python-5-83", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1937,25 +2500,33 @@ "深入研究循环": { "keywords": [], "children": [], - "node_id": "python-7-0" + "node_id": "python-7-0", + "keywords_must": [], + "keywords_forbid": [] } }, { "在for循环中执行更多操作": { "keywords": [], "children": [], - "node_id": "python-7-1" + "node_id": "python-7-1", + "keywords_must": [], + "keywords_forbid": [] } }, { "在for循环结束后执行一些操作": { "keywords": [], "children": [], - "node_id": "python-7-2" + "node_id": "python-7-2", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-21" + "node_id": "python-6-21", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -1966,39 +2537,51 @@ "忘记缩进": { "keywords": [], "children": [], - "node_id": "python-7-3" + "node_id": "python-7-3", + "keywords_must": [], + "keywords_forbid": [] } }, { "忘记缩进额外的代码行": { "keywords": [], "children": [], - "node_id": "python-7-4" + "node_id": "python-7-4", + "keywords_must": [], + "keywords_forbid": [] } }, { "不必要的缩进": { "keywords": [], "children": [], - "node_id": "python-7-5" + "node_id": "python-7-5", + "keywords_must": [], + "keywords_forbid": [] } }, { "循环后不必要的缩进": { "keywords": [], "children": [], - "node_id": "python-7-6" + "node_id": "python-7-6", + "keywords_must": [], + "keywords_forbid": [] } }, { "遗漏了冒号": { "keywords": [], "children": [], - "node_id": "python-7-7" + "node_id": "python-7-7", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-22" + "node_id": "python-6-22", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2009,25 +2592,33 @@ "使用range创建数字列表": { "keywords": [], "children": [], - "node_id": "python-7-8" + "node_id": "python-7-8", + "keywords_must": [], + "keywords_forbid": [] } }, { "对数字列表执行简单的统计计算": { "keywords": [], "children": [], - "node_id": "python-7-9" + "node_id": "python-7-9", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表解析": { "keywords": [], "children": [], - "node_id": "python-7-10" + "node_id": "python-7-10", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-23" + "node_id": "python-6-23", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2038,131 +2629,171 @@ "格式设置指南": { "keywords": [], "children": [], - "node_id": "python-7-11" + "node_id": "python-7-11", + "keywords_must": [], + "keywords_forbid": [] } }, { "行长": { "keywords": [], "children": [], - "node_id": "python-7-12" + "node_id": "python-7-12", + "keywords_must": [], + "keywords_forbid": [] } }, { "空行": { "keywords": [], "children": [], - "node_id": "python-7-13" + "node_id": "python-7-13", + "keywords_must": [], + "keywords_forbid": [] } }, { "其他格式设置指南": { "keywords": [], "children": [], - "node_id": "python-7-14" + "node_id": "python-7-14", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-24" + "node_id": "python-6-24", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-84" + "node_id": "python-5-84", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表方法": { "keywords": [], "children": [], - "node_id": "python-5-85" + "node_id": "python-5-85", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表数据类型": { "keywords": [], "children": [], - "node_id": "python-5-86" + "node_id": "python-5-86", + "keywords_must": [], + "keywords_forbid": [] } }, { "增强的赋值操作": { "keywords": [], "children": [], - "node_id": "python-5-87" + "node_id": "python-5-87", + "keywords_must": [], + "keywords_forbid": [] } }, { "序列数据类型": { "keywords": [], "children": [], - "node_id": "python-5-88" + "node_id": "python-5-88", + "keywords_must": [], + "keywords_forbid": [] } }, { "引用": { "keywords": [], "children": [], - "node_id": "python-5-89" + "node_id": "python-5-89", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问列表元素": { "keywords": [], "children": [], - "node_id": "python-5-90" + "node_id": "python-5-90", + "keywords_must": [], + "keywords_forbid": [] } }, { "索引从0而不是1开始": { "keywords": [], "children": [], - "node_id": "python-5-91" + "node_id": "python-5-91", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用列表中的各个值": { "keywords": [], "children": [], - "node_id": "python-5-92" + "node_id": "python-5-92", + "keywords_must": [], + "keywords_forbid": [] } }, { "遍历切片": { "keywords": [], "children": [], - "node_id": "python-5-93" + "node_id": "python-5-93", + "keywords_must": [], + "keywords_forbid": [] } }, { "复制列表": { "keywords": [], "children": [], - "node_id": "python-5-94" + "node_id": "python-5-94", + "keywords_must": [], + "keywords_forbid": [] } }, { "列表的创建和删除": { "keywords": [], "children": [], - "node_id": "python-5-95" + "node_id": "python-5-95", + "keywords_must": [], + "keywords_forbid": [] } }, { "对列表进行统计计算": { "keywords": [], "children": [], - "node_id": "python-5-96" + "node_id": "python-5-96", + "keywords_must": [], + "keywords_forbid": [] } }, { "对列表进行排序": { "keywords": [], "children": [], - "node_id": "python-5-97" + "node_id": "python-5-97", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-137" + "node_id": "python-4-137", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2173,49 +2804,63 @@ "访问字典中的值": { "keywords": [], "children": [], - "node_id": "python-5-98" + "node_id": "python-5-98", + "keywords_must": [], + "keywords_forbid": [] } }, { "添加键值对": { "keywords": [], "children": [], - "node_id": "python-5-99" + "node_id": "python-5-99", + "keywords_must": [], + "keywords_forbid": [] } }, { "先创建一个空字典": { "keywords": [], "children": [], - "node_id": "python-5-100" + "node_id": "python-5-100", + "keywords_must": [], + "keywords_forbid": [] } }, { "修改字典中的值": { "keywords": [], "children": [], - "node_id": "python-5-101" + "node_id": "python-5-101", + "keywords_must": [], + "keywords_forbid": [] } }, { "删除键值对": { "keywords": [], "children": [], - "node_id": "python-5-102" + "node_id": "python-5-102", + "keywords_must": [], + "keywords_forbid": [] } }, { "由类似对象组成的字典": { "keywords": [], "children": [], - "node_id": "python-5-103" + "node_id": "python-5-103", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用get来访问值": { "keywords": [], "children": [], - "node_id": "python-5-104" + "node_id": "python-5-104", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2226,50 +2871,66 @@ "遍历所有键值对": { "keywords": [], "children": [], - "node_id": "python-6-25" + "node_id": "python-6-25", + "keywords_must": [], + "keywords_forbid": [] } }, { "遍历字典中的所有键": { "keywords": [], "children": [], - "node_id": "python-6-26" + "node_id": "python-6-26", + "keywords_must": [], + "keywords_forbid": [] } }, { "按特定顺序遍历字典中的所有键": { "keywords": [], "children": [], - "node_id": "python-6-27" + "node_id": "python-6-27", + "keywords_must": [], + "keywords_forbid": [] } }, { "遍历字典中的所有值": { "keywords": [], "children": [], - "node_id": "python-6-28" + "node_id": "python-6-28", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-105" + "node_id": "python-5-105", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问字典": { "keywords": [], "children": [], - "node_id": "python-5-106" + "node_id": "python-5-106", + "keywords_must": [], + "keywords_forbid": [] } }, { "字典推导式": { "keywords": [], "children": [], - "node_id": "python-5-107" + "node_id": "python-5-107", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-138" + "node_id": "python-4-138", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2280,46 +2941,60 @@ "定义元组": { "keywords": [], "children": [], - "node_id": "python-5-108" + "node_id": "python-5-108", + "keywords_must": [], + "keywords_forbid": [] } }, { "遍历元组中的所有值": { "keywords": [], "children": [], - "node_id": "python-5-109" + "node_id": "python-5-109", + "keywords_must": [], + "keywords_forbid": [] } }, { "修改元组变量": { "keywords": [], "children": [], - "node_id": "python-5-110" + "node_id": "python-5-110", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问元组元素": { "keywords": [], "children": [], - "node_id": "python-5-111" + "node_id": "python-5-111", + "keywords_must": [], + "keywords_forbid": [] } }, { "修改元组": { "keywords": [], "children": [], - "node_id": "python-5-112" + "node_id": "python-5-112", + "keywords_must": [], + "keywords_forbid": [] } }, { "元组推导式": { "keywords": [], "children": [], - "node_id": "python-5-113" + "node_id": "python-5-113", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-139" + "node_id": "python-4-139", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2330,35 +3005,47 @@ "创建集合": { "keywords": [], "children": [], - "node_id": "python-5-114" + "node_id": "python-5-114", + "keywords_must": [], + "keywords_forbid": [] } }, { "集合的交集、并集和差集运算": { "keywords": [], "children": [], - "node_id": "python-5-115" + "node_id": "python-5-115", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-140" + "node_id": "python-4-140", + "keywords_must": [], + "keywords_forbid": [] } }, { "整型:int": { "keywords": [], "children": [], - "node_id": "python-4-141" + "node_id": "python-4-141", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串:str": { "keywords": [], "children": [], - "node_id": "python-4-142" + "node_id": "python-4-142", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2370,97 +3057,127 @@ "help": { "keywords": [], "children": [], - "node_id": "python-4-143" + "node_id": "python-4-143", + "keywords_must": [], + "keywords_forbid": [] } }, { "input": { "keywords": [], "children": [], - "node_id": "python-4-144" + "node_id": "python-4-144", + "keywords_must": [], + "keywords_forbid": [] } }, { "print": { "keywords": [], "children": [], - "node_id": "python-4-145" + "node_id": "python-4-145", + "keywords_must": [], + "keywords_forbid": [] } }, { "range": { "keywords": [], "children": [], - "node_id": "python-4-146" + "node_id": "python-4-146", + "keywords_must": [], + "keywords_forbid": [] } }, { "format": { "keywords": [], "children": [], - "node_id": "python-4-147" + "node_id": "python-4-147", + "keywords_must": [], + "keywords_forbid": [] } }, { "len": { "keywords": [], "children": [], - "node_id": "python-4-148" + "node_id": "python-4-148", + "keywords_must": [], + "keywords_forbid": [] } }, { "sorted": { "keywords": [], "children": [], - "node_id": "python-4-149" + "node_id": "python-4-149", + "keywords_must": [], + "keywords_forbid": [] } }, { "open": { "keywords": [], "children": [], - "node_id": "python-4-150" + "node_id": "python-4-150", + "keywords_must": [], + "keywords_forbid": [] } }, { "dir": { "keywords": [], "children": [], - "node_id": "python-4-151" + "node_id": "python-4-151", + "keywords_must": [], + "keywords_forbid": [] } }, { "enumerate/zip": { "keywords": [], "children": [], - "node_id": "python-4-152" + "node_id": "python-4-152", + "keywords_must": [], + "keywords_forbid": [] } }, { "type/isinstance": { "keywords": [], "children": [], - "node_id": "python-4-153" + "node_id": "python-4-153", + "keywords_must": [], + "keywords_forbid": [] } }, { "min/max/sum": { "keywords": [], "children": [], - "node_id": "python-4-154" + "node_id": "python-4-154", + "keywords_must": [], + "keywords_forbid": [] } }, { "abs/round/pow/divmod": { "keywords": [], "children": [], - "node_id": "python-4-155" + "node_id": "python-4-155", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2472,7 +3189,9 @@ "列表推导式": { "node_id": "python-3-17", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2484,122 +3203,160 @@ "算术转换": { "keywords": [], "children": [], - "node_id": "python-4-156" + "node_id": "python-4-156", + "keywords_must": [], + "keywords_forbid": [] } }, { "原子": { "keywords": [], "children": [], - "node_id": "python-4-157" + "node_id": "python-4-157", + "keywords_must": [], + "keywords_forbid": [] } }, { "原型": { "keywords": [], "children": [], - "node_id": "python-4-158" + "node_id": "python-4-158", + "keywords_must": [], + "keywords_forbid": [] } }, { "await表达式": { "keywords": [], "children": [], - "node_id": "python-4-159" + "node_id": "python-4-159", + "keywords_must": [], + "keywords_forbid": [] } }, { "幂运算符": { "keywords": [], "children": [], - "node_id": "python-4-160" + "node_id": "python-4-160", + "keywords_must": [], + "keywords_forbid": [] } }, { "一元算术和位运算": { "keywords": [], "children": [], - "node_id": "python-4-161" + "node_id": "python-4-161", + "keywords_must": [], + "keywords_forbid": [] } }, { "二元算术运算符": { "keywords": [], "children": [], - "node_id": "python-4-162" + "node_id": "python-4-162", + "keywords_must": [], + "keywords_forbid": [] } }, { "移位运算": { "keywords": [], "children": [], - "node_id": "python-4-163" + "node_id": "python-4-163", + "keywords_must": [], + "keywords_forbid": [] } }, { "比较运算": { "keywords": [], "children": [], - "node_id": "python-4-164" + "node_id": "python-4-164", + "keywords_must": [], + "keywords_forbid": [] } }, { "布尔运算": { "keywords": [], "children": [], - "node_id": "python-4-165" + "node_id": "python-4-165", + "keywords_must": [], + "keywords_forbid": [] } }, { "赋值表达式": { "keywords": [], "children": [], - "node_id": "python-4-166" + "node_id": "python-4-166", + "keywords_must": [], + "keywords_forbid": [] } }, { "条件表达式": { "keywords": [], "children": [], - "node_id": "python-4-167" + "node_id": "python-4-167", + "keywords_must": [], + "keywords_forbid": [] } }, { "表达式列表": { "keywords": [], "children": [], - "node_id": "python-4-168" + "node_id": "python-4-168", + "keywords_must": [], + "keywords_forbid": [] } }, { "求值顺序": { "keywords": [], "children": [], - "node_id": "python-4-169" + "node_id": "python-4-169", + "keywords_must": [], + "keywords_forbid": [] } }, { "运算符优先级": { "keywords": [], "children": [], - "node_id": "python-4-170" + "node_id": "python-4-170", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "三元表达式" + ], + "keywords_forbid": [] } }, { "断言": { "node_id": "python-3-19", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "with-as": { "node_id": "python-3-20", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2611,17 +3368,23 @@ "try-catch-finally": { "keywords": [], "children": [], - "node_id": "python-4-171" + "node_id": "python-4-171", + "keywords_must": [], + "keywords_forbid": [] } }, { "异常捕获": { "keywords": [], "children": [], - "node_id": "python-4-172" + "node_id": "python-4-172", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2633,80 +3396,104 @@ "find": { "keywords": [], "children": [], - "node_id": "python-4-173" + "node_id": "python-4-173", + "keywords_must": [], + "keywords_forbid": [] } }, { "index": { "keywords": [], "children": [], - "node_id": "python-4-174" + "node_id": "python-4-174", + "keywords_must": [], + "keywords_forbid": [] } }, { "join": { "keywords": [], "children": [], - "node_id": "python-4-175" + "node_id": "python-4-175", + "keywords_must": [], + "keywords_forbid": [] } }, { "lower": { "keywords": [], "children": [], - "node_id": "python-4-176" + "node_id": "python-4-176", + "keywords_must": [], + "keywords_forbid": [] } }, { "replace": { "keywords": [], "children": [], - "node_id": "python-4-177" + "node_id": "python-4-177", + "keywords_must": [], + "keywords_forbid": [] } }, { "split": { "keywords": [], "children": [], - "node_id": "python-4-178" + "node_id": "python-4-178", + "keywords_must": [], + "keywords_forbid": [] } }, { "strip": { "keywords": [], "children": [], - "node_id": "python-4-179" + "node_id": "python-4-179", + "keywords_must": [], + "keywords_forbid": [] } }, { "translate": { "keywords": [], "children": [], - "node_id": "python-4-180" + "node_id": "python-4-180", + "keywords_must": [], + "keywords_forbid": [] } }, { "upper": { "keywords": [], "children": [], - "node_id": "python-4-181" + "node_id": "python-4-181", + "keywords_must": [], + "keywords_forbid": [] } }, { "center": { "keywords": [], "children": [], - "node_id": "python-4-182" + "node_id": "python-4-182", + "keywords_must": [], + "keywords_forbid": [] } }, { "判断字符串是否满足特定的条件": { "keywords": [], "children": [], - "node_id": "python-4-183" + "node_id": "python-4-183", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2722,18 +3509,24 @@ "迭代器协议": { "keywords": [], "children": [], - "node_id": "python-5-116" + "node_id": "python-5-116", + "keywords_must": [], + "keywords_forbid": [] } }, { "从迭代器创建序列": { "keywords": [], "children": [], - "node_id": "python-5-117" + "node_id": "python-5-117", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-184" + "node_id": "python-4-184", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2744,56 +3537,74 @@ "创建生成器": { "keywords": [], "children": [], - "node_id": "python-5-118" + "node_id": "python-5-118", + "keywords_must": [], + "keywords_forbid": [] } }, { "递归式生成器": { "keywords": [], "children": [], - "node_id": "python-5-119" + "node_id": "python-5-119", + "keywords_must": [], + "keywords_forbid": [] } }, { "通用生成器": { "keywords": [], "children": [], - "node_id": "python-5-120" + "node_id": "python-5-120", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成器的方法": { "keywords": [], "children": [], - "node_id": "python-5-121" + "node_id": "python-5-121", + "keywords_must": [], + "keywords_forbid": [] } }, { "模拟生成器": { "keywords": [], "children": [], - "node_id": "python-5-122" + "node_id": "python-5-122", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-185" + "node_id": "python-4-185", + "keywords_must": [], + "keywords_forbid": [] } }, { "装饰器": { "keywords": [], "children": [], - "node_id": "python-4-186" + "node_id": "python-4-186", + "keywords_must": [], + "keywords_forbid": [] } }, { "闭包": { "keywords": [], "children": [], - "node_id": "python-4-187" + "node_id": "python-4-187", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2805,14 +3616,18 @@ "打开文件": { "keywords": [], "children": [], - "node_id": "python-4-188" + "node_id": "python-4-188", + "keywords_must": [], + "keywords_forbid": [] } }, { "文件基本方法": { "keywords": [], "children": [], - "node_id": "python-4-189" + "node_id": "python-4-189", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2823,39 +3638,51 @@ "每次一个字符(或字节)": { "keywords": [], "children": [], - "node_id": "python-5-123" + "node_id": "python-5-123", + "keywords_must": [], + "keywords_forbid": [] } }, { "每次一行": { "keywords": [], "children": [], - "node_id": "python-5-124" + "node_id": "python-5-124", + "keywords_must": [], + "keywords_forbid": [] } }, { "读取所有内容": { "keywords": [], "children": [], - "node_id": "python-5-125" + "node_id": "python-5-125", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用fileinput实现延迟行迭代": { "keywords": [], "children": [], - "node_id": "python-5-126" + "node_id": "python-5-126", + "keywords_must": [], + "keywords_forbid": [] } }, { "文件迭代器": { "keywords": [], "children": [], - "node_id": "python-5-127" + "node_id": "python-5-127", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-190" + "node_id": "python-4-190", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2866,42 +3693,56 @@ "读取和写入": { "keywords": [], "children": [], - "node_id": "python-5-128" + "node_id": "python-5-128", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用管道重定向输出": { "keywords": [], "children": [], - "node_id": "python-5-129" + "node_id": "python-5-129", + "keywords_must": [], + "keywords_forbid": [] } }, { "读取和写入行": { "keywords": [], "children": [], - "node_id": "python-5-130" + "node_id": "python-5-130", + "keywords_must": [], + "keywords_forbid": [] } }, { "关闭文件": { "keywords": [], "children": [], - "node_id": "python-5-131" + "node_id": "python-5-131", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用文件的基本方法": { "keywords": [], "children": [], - "node_id": "python-5-132" + "node_id": "python-5-132", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-191" + "node_id": "python-4-191", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2913,80 +3754,104 @@ "datetime": { "keywords": [], "children": [], - "node_id": "python-4-192" + "node_id": "python-4-192", + "keywords_must": [], + "keywords_forbid": [] } }, { "json": { "keywords": [], "children": [], - "node_id": "python-4-193" + "node_id": "python-4-193", + "keywords_must": [], + "keywords_forbid": [] } }, { "math": { "keywords": [], "children": [], - "node_id": "python-4-194" + "node_id": "python-4-194", + "keywords_must": [], + "keywords_forbid": [] } }, { "os": { "keywords": [], "children": [], - "node_id": "python-4-195" + "node_id": "python-4-195", + "keywords_must": [], + "keywords_forbid": [] } }, { "random": { "keywords": [], "children": [], - "node_id": "python-4-196" + "node_id": "python-4-196", + "keywords_must": [], + "keywords_forbid": [] } }, { "re": { "keywords": [], "children": [], - "node_id": "python-4-197" + "node_id": "python-4-197", + "keywords_must": [], + "keywords_forbid": [] } }, { "sys": { "keywords": [], "children": [], - "node_id": "python-4-198" + "node_id": "python-4-198", + "keywords_must": [], + "keywords_forbid": [] } }, { "time": { "keywords": [], "children": [], - "node_id": "python-4-199" + "node_id": "python-4-199", + "keywords_must": [], + "keywords_forbid": [] } }, { "urllib": { "keywords": [], "children": [], - "node_id": "python-4-200" + "node_id": "python-4-200", + "keywords_must": [], + "keywords_forbid": [] } }, { "fileinput": { "keywords": [], "children": [], - "node_id": "python-4-201" + "node_id": "python-4-201", + "keywords_must": [], + "keywords_forbid": [] } }, { "其他有趣的标准模块": { "keywords": [], "children": [], - "node_id": "python-4-202" + "node_id": "python-4-202", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -2998,13 +3863,19 @@ "理解内码和字节码的概念": { "keywords": [], "children": [], - "node_id": "python-4-203" + "node_id": "python-4-203", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3016,14 +3887,18 @@ "类和对象的概念": { "node_id": "python-3-27", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "类成员": { "node_id": "python-3-28", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3035,7 +3910,9 @@ "封装": { "keywords": [], "children": [], - "node_id": "python-4-204" + "node_id": "python-4-204", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3046,69 +3923,93 @@ "子类的方法__init__": { "keywords": [], "children": [], - "node_id": "python-5-133" + "node_id": "python-5-133", + "keywords_must": [], + "keywords_forbid": [] } }, { "重写父类的方法": { "keywords": [], "children": [], - "node_id": "python-5-134" + "node_id": "python-5-134", + "keywords_must": [], + "keywords_forbid": [] } }, { "模拟实物": { "keywords": [], "children": [], - "node_id": "python-5-135" + "node_id": "python-5-135", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-205" + "node_id": "python-4-205", + "keywords_must": [], + "keywords_forbid": [] } }, { "多态": { "keywords": [], "children": [], - "node_id": "python-4-206" + "node_id": "python-4-206", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "创建类": { "node_id": "python-3-30", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "抽象类": { "node_id": "python-3-31", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "访问限制": { "node_id": "python-3-32", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { "获取对象信息": { "node_id": "python-3-33", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3125,7 +4026,9 @@ "解析命令行参数": { "node_id": "python-insert-4", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3137,17 +4040,23 @@ "time": { "keywords": [], "children": [], - "node_id": "python-4-752" + "node_id": "python-4-752", + "keywords_must": [], + "keywords_forbid": [] } }, { "datetime": { "keywords": [], "children": [], - "node_id": "python-4-753" + "node_id": "python-4-753", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3159,10 +4068,14 @@ "excel/csv/hdf/netCDF": { "keywords": [], "children": [], - "node_id": "python-4-754" + "node_id": "python-4-754", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3174,21 +4087,27 @@ "数据库概述": { "keywords": [], "children": [], - "node_id": "python-4-755" + "node_id": "python-4-755", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据库安装配置": { "keywords": [], "children": [], - "node_id": "python-4-756" + "node_id": "python-4-756", + "keywords_must": [], + "keywords_forbid": [] } }, { "SQL语句": { "keywords": [], "children": [], - "node_id": "python-4-757" + "node_id": "python-4-757", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3199,18 +4118,24 @@ "创建数据库文件": { "keywords": [], "children": [], - "node_id": "python-5-409" + "node_id": "python-5-409", + "keywords_must": [], + "keywords_forbid": [] } }, { "操作SQLite": { "keywords": [], "children": [], - "node_id": "python-5-410" + "node_id": "python-5-410", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-758" + "node_id": "python-4-758", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3221,39 +4146,51 @@ "下载安装MySQL": { "keywords": [], "children": [], - "node_id": "python-5-411" + "node_id": "python-5-411", + "keywords_must": [], + "keywords_forbid": [] } }, { "连接数据库": { "keywords": [], "children": [], - "node_id": "python-5-412" + "node_id": "python-5-412", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建数据表": { "keywords": [], "children": [], - "node_id": "python-5-413" + "node_id": "python-5-413", + "keywords_must": [], + "keywords_forbid": [] } }, { "操作MySQL数据表": { "keywords": [], "children": [], - "node_id": "python-5-414" + "node_id": "python-5-414", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-759" + "node_id": "python-4-759", + "keywords_must": [], + "keywords_forbid": [] } }, { "MongoDB": { "keywords": [], "children": [], - "node_id": "python-4-760" + "node_id": "python-4-760", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3264,21 +4201,29 @@ "连接对象": { "keywords": [], "children": [], - "node_id": "python-5-415" + "node_id": "python-5-415", + "keywords_must": [], + "keywords_forbid": [] } }, { "游标对象": { "keywords": [], "children": [], - "node_id": "python-5-416" + "node_id": "python-5-416", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-761" + "node_id": "python-4-761", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3290,10 +4235,14 @@ "OS/Sys": { "keywords": [], "children": [], - "node_id": "python-4-762" + "node_id": "python-4-762", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3305,10 +4254,14 @@ "pyinstaller": { "keywords": [], "children": [], - "node_id": "python-4-769" + "node_id": "python-4-769", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3324,25 +4277,33 @@ "TCP/IP简介": { "keywords": [], "children": [], - "node_id": "python-5-1539" + "node_id": "python-5-1539", + "keywords_must": [], + "keywords_forbid": [] } }, { "UDP简介": { "keywords": [], "children": [], - "node_id": "python-5-1540" + "node_id": "python-5-1540", + "keywords_must": [], + "keywords_forbid": [] } }, { "Socket简介": { "keywords": [], "children": [], - "node_id": "python-5-1541" + "node_id": "python-5-1541", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1484" + "node_id": "python-4-1484", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3353,25 +4314,33 @@ "创建TCP服务器": { "keywords": [], "children": [], - "node_id": "python-5-1542" + "node_id": "python-5-1542", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建TCP客户端": { "keywords": [], "children": [], - "node_id": "python-5-1543" + "node_id": "python-5-1543", + "keywords_must": [], + "keywords_forbid": [] } }, { "执行TCP服务器和客户端": { "keywords": [], "children": [], - "node_id": "python-5-1544" + "node_id": "python-5-1544", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1485" + "node_id": "python-4-1485", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3382,28 +4351,41 @@ "创建UDP服务器": { "keywords": [], "children": [], - "node_id": "python-5-1545" + "node_id": "python-5-1545", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建UDP客户端": { "keywords": [], "children": [], - "node_id": "python-5-1546" + "node_id": "python-5-1546", + "keywords_must": [], + "keywords_forbid": [] } }, { "执行UDP服务器和客户端": { "keywords": [], "children": [], - "node_id": "python-5-1547" + "node_id": "python-5-1547", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1486" + "node_id": "python-4-1486", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "网络编程", + "Socket" + ], + "keywords_forbid": [] } }, { @@ -3415,13 +4397,19 @@ "smtplib": { "keywords": [], "children": [], - "node_id": "python-4-788" + "node_id": "python-4-788", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3438,31 +4426,41 @@ "HTML/HTML5/CSS": { "keywords": [], "children": [], - "node_id": "python-4-789" + "node_id": "python-4-789", + "keywords_must": [], + "keywords_forbid": [] } }, { "前端数据库和后台": { "keywords": [], "children": [], - "node_id": "python-4-790" + "node_id": "python-4-790", + "keywords_must": [], + "keywords_forbid": [] } }, { "MVC架构": { "keywords": [], "children": [], - "node_id": "python-4-791" + "node_id": "python-4-791", + "keywords_must": [], + "keywords_forbid": [] } }, { "REST和Ajax": { "keywords": [], "children": [], - "node_id": "python-4-792" + "node_id": "python-4-792", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3474,84 +4472,108 @@ "Django简介": { "keywords": [], "children": [], - "node_id": "python-4-793" + "node_id": "python-4-793", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django安装配置": { "keywords": [], "children": [], - "node_id": "python-4-794" + "node_id": "python-4-794", + "keywords_must": [], + "keywords_forbid": [] } }, { "DTL(Django Template Language)": { "keywords": [], "children": [], - "node_id": "python-4-795" + "node_id": "python-4-795", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django路由定义": { "keywords": [], "children": [], - "node_id": "python-4-796" + "node_id": "python-4-796", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django请求数据解析": { "keywords": [], "children": [], - "node_id": "python-4-797" + "node_id": "python-4-797", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django数据库操作": { "keywords": [], "children": [], - "node_id": "python-4-798" + "node_id": "python-4-798", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django提交表单": { "keywords": [], "children": [], - "node_id": "python-4-799" + "node_id": "python-4-799", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django Rest Framework": { "keywords": [], "children": [], - "node_id": "python-4-800" + "node_id": "python-4-800", + "keywords_must": [], + "keywords_forbid": [] } }, { "部署日志与安全": { "keywords": [], "children": [], - "node_id": "python-4-801" + "node_id": "python-4-801", + "keywords_must": [], + "keywords_forbid": [] } }, { "Django开发案例": { "keywords": [], "children": [], - "node_id": "python-4-802" + "node_id": "python-4-802", + "keywords_must": [], + "keywords_forbid": [] } }, { "Web框架": { "keywords": [], "children": [], - "node_id": "python-4-803" + "node_id": "python-4-803", + "keywords_must": [], + "keywords_forbid": [] } }, { "“Hello World”应用(一个博客)": { "keywords": [], "children": [], - "node_id": "python-4-804" + "node_id": "python-4-804", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3562,11 +4584,15 @@ "设置数据库": { "keywords": [], "children": [], - "node_id": "python-5-447" + "node_id": "python-5-447", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-805" + "node_id": "python-4-805", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3577,18 +4603,24 @@ "在Django中使用Python shell": { "keywords": [], "children": [], - "node_id": "python-5-448" + "node_id": "python-5-448", + "keywords_must": [], + "keywords_forbid": [] } }, { "测试数据模型": { "keywords": [], "children": [], - "node_id": "python-5-449" + "node_id": "python-5-449", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-806" + "node_id": "python-4-806", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3599,18 +4631,24 @@ "设置admin": { "keywords": [], "children": [], - "node_id": "python-5-450" + "node_id": "python-5-450", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用admin": { "keywords": [], "children": [], - "node_id": "python-5-451" + "node_id": "python-5-451", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-807" + "node_id": "python-4-807", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3621,32 +4659,42 @@ "创建模板": { "keywords": [], "children": [], - "node_id": "python-5-452" + "node_id": "python-5-452", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建URL模式": { "keywords": [], "children": [], - "node_id": "python-5-453" + "node_id": "python-5-453", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建视图函数": { "keywords": [], "children": [], - "node_id": "python-5-454" + "node_id": "python-5-454", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-808" + "node_id": "python-4-808", + "keywords_must": [], + "keywords_forbid": [] } }, { "改进输出": { "keywords": [], "children": [], - "node_id": "python-4-809" + "node_id": "python-4-809", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3657,25 +4705,33 @@ "添加URLconf项": { "keywords": [], "children": [], - "node_id": "python-5-455" + "node_id": "python-5-455", + "keywords_must": [], + "keywords_forbid": [] } }, { "视图:处理用户输入": { "keywords": [], "children": [], - "node_id": "python-5-456" + "node_id": "python-5-456", + "keywords_must": [], + "keywords_forbid": [] } }, { "跨站点请求伪造": { "keywords": [], "children": [], - "node_id": "python-5-457" + "node_id": "python-5-457", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-810" + "node_id": "python-4-810", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3686,46 +4742,60 @@ "Django表单简介": { "keywords": [], "children": [], - "node_id": "python-5-458" + "node_id": "python-5-458", + "keywords_must": [], + "keywords_forbid": [] } }, { "模型表单示例": { "keywords": [], "children": [], - "node_id": "python-5-459" + "node_id": "python-5-459", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用ModelForm来生成HTML表单": { "keywords": [], "children": [], - "node_id": "python-5-460" + "node_id": "python-5-460", + "keywords_must": [], + "keywords_forbid": [] } }, { "处理ModelForm数据": { "keywords": [], "children": [], - "node_id": "python-5-461" + "node_id": "python-5-461", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-811" + "node_id": "python-4-811", + "keywords_must": [], + "keywords_forbid": [] } }, { "视图进阶": { "keywords": [], "children": [], - "node_id": "python-4-812" + "node_id": "python-4-812", + "keywords_must": [], + "keywords_forbid": [] } }, { "*改善外观": { "keywords": [], "children": [], - "node_id": "python-4-813" + "node_id": "python-4-813", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3736,49 +4806,67 @@ "安装Twython库": { "keywords": [], "children": [], - "node_id": "python-5-462" + "node_id": "python-5-462", + "keywords_must": [], + "keywords_forbid": [] } }, { "URL结构": { "keywords": [], "children": [], - "node_id": "python-5-463" + "node_id": "python-5-463", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据模型": { "keywords": [], "children": [], - "node_id": "python-5-464" + "node_id": "python-5-464", + "keywords_must": [], + "keywords_forbid": [] } }, { "提交新推文以便审核": { "keywords": [], "children": [], - "node_id": "python-5-465" + "node_id": "python-5-465", + "keywords_must": [], + "keywords_forbid": [] } }, { "审核推文": { "keywords": [], "children": [], - "node_id": "python-5-466" + "node_id": "python-5-466", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-814" + "node_id": "python-4-814", + "keywords_must": [], + "keywords_forbid": [] } }, { "资源": { "keywords": [], "children": [], - "node_id": "python-4-815" + "node_id": "python-4-815", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "django" + ], + "keywords_forbid": [] } }, { @@ -3790,66 +4878,88 @@ "Tornado简介": { "keywords": [], "children": [], - "node_id": "python-4-816" + "node_id": "python-4-816", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado安装配置": { "keywords": [], "children": [], - "node_id": "python-4-817" + "node_id": "python-4-817", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado提交表单": { "keywords": [], "children": [], - "node_id": "python-4-818" + "node_id": "python-4-818", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado模板": { "keywords": [], "children": [], - "node_id": "python-4-819" + "node_id": "python-4-819", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado数据库操作": { "keywords": [], "children": [], - "node_id": "python-4-820" + "node_id": "python-4-820", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado异步Web服务": { "keywords": [], "children": [], - "node_id": "python-4-821" + "node_id": "python-4-821", + "keywords_must": [], + "keywords_forbid": [] } }, { "外部服务认证(auth)": { "keywords": [], "children": [], - "node_id": "python-4-822" + "node_id": "python-4-822", + "keywords_must": [], + "keywords_forbid": [] } }, { "部署日志与安全": { "keywords": [], "children": [], - "node_id": "python-4-823" + "node_id": "python-4-823", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tornado开发案例": { "keywords": [], "children": [], - "node_id": "python-4-824" + "node_id": "python-4-824", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "tornado" + ], + "keywords_forbid": [] } }, { @@ -3869,46 +4979,60 @@ "创建应用目录": { "keywords": [], "children": [], - "node_id": "python-6-56" + "node_id": "python-6-56", + "keywords_must": [], + "keywords_forbid": [] } }, { "虚拟环境": { "keywords": [], "children": [], - "node_id": "python-6-57" + "node_id": "python-6-57", + "keywords_must": [], + "keywords_forbid": [] } }, { "在Python 3中创建虚拟环境": { "keywords": [], "children": [], - "node_id": "python-6-58" + "node_id": "python-6-58", + "keywords_must": [], + "keywords_forbid": [] } }, { "在Python 2中创建虚拟环境": { "keywords": [], "children": [], - "node_id": "python-6-59" + "node_id": "python-6-59", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用虚拟环境": { "keywords": [], "children": [], - "node_id": "python-6-60" + "node_id": "python-6-60", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用pip安装Python包": { "keywords": [], "children": [], - "node_id": "python-6-61" + "node_id": "python-6-61", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-467" + "node_id": "python-5-467", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3919,49 +5043,63 @@ "初始化": { "keywords": [], "children": [], - "node_id": "python-6-62" + "node_id": "python-6-62", + "keywords_must": [], + "keywords_forbid": [] } }, { "路由和视图函数": { "keywords": [], "children": [], - "node_id": "python-6-63" + "node_id": "python-6-63", + "keywords_must": [], + "keywords_forbid": [] } }, { "一个完整的应用": { "keywords": [], "children": [], - "node_id": "python-6-64" + "node_id": "python-6-64", + "keywords_must": [], + "keywords_forbid": [] } }, { "Web开发服务器": { "keywords": [], "children": [], - "node_id": "python-6-65" + "node_id": "python-6-65", + "keywords_must": [], + "keywords_forbid": [] } }, { "动态路由": { "keywords": [], "children": [], - "node_id": "python-6-66" + "node_id": "python-6-66", + "keywords_must": [], + "keywords_forbid": [] } }, { "调试模式": { "keywords": [], "children": [], - "node_id": "python-6-67" + "node_id": "python-6-67", + "keywords_must": [], + "keywords_forbid": [] } }, { "命令行选项": { "keywords": [], "children": [], - "node_id": "python-6-68" + "node_id": "python-6-68", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3972,14 +5110,18 @@ "应用和请求上下文": { "keywords": [], "children": [], - "node_id": "python-7-15" + "node_id": "python-7-15", + "keywords_must": [], + "keywords_forbid": [] } }, { "请求分派": { "keywords": [], "children": [], - "node_id": "python-7-16" + "node_id": "python-7-16", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -3990,47 +5132,63 @@ "对象显示": { "keywords": [], "children": [], - "node_id": "python-8-0" + "node_id": "python-8-0", + "keywords_must": [], + "keywords_forbid": [] } }, { "有效创建大量对象": { "keywords": [], "children": [], - "node_id": "python-8-1" + "node_id": "python-8-1", + "keywords_must": [], + "keywords_forbid": [] } }, { "由字符串调用对象": { "keywords": [], "children": [], - "node_id": "python-8-2" + "node_id": "python-8-2", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-7-17" + "node_id": "python-7-17", + "keywords_must": [], + "keywords_forbid": [] } }, { "请求钩子": { "keywords": [], "children": [], - "node_id": "python-7-18" + "node_id": "python-7-18", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-69" + "node_id": "python-6-69", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask扩展": { "keywords": [], "children": [], - "node_id": "python-6-70" + "node_id": "python-6-70", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-468" + "node_id": "python-5-468", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4045,7 +5203,9 @@ "渲染模板": { "keywords": [], "children": [], - "node_id": "python-7-19" + "node_id": "python-7-19", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4056,68 +5216,90 @@ "匿名函数捕获变量值": { "keywords": [], "children": [], - "node_id": "python-8-3" + "node_id": "python-8-3", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问闭包中定义的变量": { "keywords": [], "children": [], - "node_id": "python-8-4" + "node_id": "python-8-4", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-7-20" + "node_id": "python-7-20", + "keywords_must": [], + "keywords_forbid": [] } }, { "控制结构": { "keywords": [], "children": [], - "node_id": "python-7-21" + "node_id": "python-7-21", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-71" + "node_id": "python-6-71", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Flask-Bootstrap集成Bootstrap": { "keywords": [], "children": [], - "node_id": "python-6-72" + "node_id": "python-6-72", + "keywords_must": [], + "keywords_forbid": [] } }, { "自定义错误页面": { "keywords": [], "children": [], - "node_id": "python-6-73" + "node_id": "python-6-73", + "keywords_must": [], + "keywords_forbid": [] } }, { "链接": { "keywords": [], "children": [], - "node_id": "python-6-74" + "node_id": "python-6-74", + "keywords_must": [], + "keywords_forbid": [] } }, { "静态文件": { "keywords": [], "children": [], - "node_id": "python-6-75" + "node_id": "python-6-75", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Flask-Moment本地化日期和时间": { "keywords": [], "children": [], - "node_id": "python-6-76" + "node_id": "python-6-76", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-469" + "node_id": "python-5-469", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4128,46 +5310,60 @@ "配置": { "keywords": [], "children": [], - "node_id": "python-6-77" + "node_id": "python-6-77", + "keywords_must": [], + "keywords_forbid": [] } }, { "表单类": { "keywords": [], "children": [], - "node_id": "python-5-1569" + "node_id": "python-5-1569", + "keywords_must": [], + "keywords_forbid": [] } }, { "把表单渲染成HTML": { "keywords": [], "children": [], - "node_id": "python-5-1570" + "node_id": "python-5-1570", + "keywords_must": [], + "keywords_forbid": [] } }, { "在视图函数中处理表单": { "keywords": [], "children": [], - "node_id": "python-6-80" + "node_id": "python-6-80", + "keywords_must": [], + "keywords_forbid": [] } }, { "重定向和用户会话": { "keywords": [], "children": [], - "node_id": "python-6-81" + "node_id": "python-6-81", + "keywords_must": [], + "keywords_forbid": [] } }, { "闪现消息": { "keywords": [], "children": [], - "node_id": "python-6-82" + "node_id": "python-6-82", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-470" + "node_id": "python-5-470", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4178,49 +5374,63 @@ "SQL数据库": { "keywords": [], "children": [], - "node_id": "python-6-83" + "node_id": "python-6-83", + "keywords_must": [], + "keywords_forbid": [] } }, { "NoSQL数据库": { "keywords": [], "children": [], - "node_id": "python-6-84" + "node_id": "python-6-84", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用SQL还是NoSQL": { "keywords": [], "children": [], - "node_id": "python-6-85" + "node_id": "python-6-85", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python数据库框架": { "keywords": [], "children": [], - "node_id": "python-6-86" + "node_id": "python-6-86", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Flask-SQLAlchemy管理数据库": { "keywords": [], "children": [], - "node_id": "python-6-87" + "node_id": "python-6-87", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义模型": { "keywords": [], "children": [], - "node_id": "python-6-88" + "node_id": "python-6-88", + "keywords_must": [], + "keywords_forbid": [] } }, { "关系": { "keywords": [], "children": [], - "node_id": "python-6-89" + "node_id": "python-6-89", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4231,53 +5441,69 @@ "创建表": { "keywords": [], "children": [], - "node_id": "python-7-22" + "node_id": "python-7-22", + "keywords_must": [], + "keywords_forbid": [] } }, { "插入行": { "keywords": [], "children": [], - "node_id": "python-7-23" + "node_id": "python-7-23", + "keywords_must": [], + "keywords_forbid": [] } }, { "修改行": { "keywords": [], "children": [], - "node_id": "python-7-24" + "node_id": "python-7-24", + "keywords_must": [], + "keywords_forbid": [] } }, { "删除行": { "keywords": [], "children": [], - "node_id": "python-7-25" + "node_id": "python-7-25", + "keywords_must": [], + "keywords_forbid": [] } }, { "查询行": { "keywords": [], "children": [], - "node_id": "python-7-26" + "node_id": "python-7-26", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-90" + "node_id": "python-6-90", + "keywords_must": [], + "keywords_forbid": [] } }, { "在视图函数中操作数据库": { "keywords": [], "children": [], - "node_id": "python-6-91" + "node_id": "python-6-91", + "keywords_must": [], + "keywords_forbid": [] } }, { "集成Python shell": { "keywords": [], "children": [], - "node_id": "python-6-92" + "node_id": "python-6-92", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4288,36 +5514,48 @@ "创建迁移仓库": { "keywords": [], "children": [], - "node_id": "python-7-27" + "node_id": "python-7-27", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建迁移脚本": { "keywords": [], "children": [], - "node_id": "python-7-28" + "node_id": "python-7-28", + "keywords_must": [], + "keywords_forbid": [] } }, { "更新数据库": { "keywords": [], "children": [], - "node_id": "python-7-29" + "node_id": "python-7-29", + "keywords_must": [], + "keywords_forbid": [] } }, { "添加几个迁移": { "keywords": [], "children": [], - "node_id": "python-7-30" + "node_id": "python-7-30", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-93" + "node_id": "python-6-93", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-471" + "node_id": "python-5-471", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4328,95 +5566,123 @@ "电子邮件系统组件和协议": { "keywords": [], "children": [], - "node_id": "python-6-94" + "node_id": "python-6-94", + "keywords_must": [], + "keywords_forbid": [] } }, { "发送电子邮件": { "keywords": [], "children": [], - "node_id": "python-6-95" + "node_id": "python-6-95", + "keywords_must": [], + "keywords_forbid": [] } }, { "Python和SMTP": { "keywords": [], "children": [], - "node_id": "python-6-96" + "node_id": "python-6-96", + "keywords_must": [], + "keywords_forbid": [] } }, { "smtplib.SMTP类方法": { "keywords": [], "children": [], - "node_id": "python-6-97" + "node_id": "python-6-97", + "keywords_must": [], + "keywords_forbid": [] } }, { "交互式SMTP示例": { "keywords": [], "children": [], - "node_id": "python-6-98" + "node_id": "python-6-98", + "keywords_must": [], + "keywords_forbid": [] } }, { "SMTP的其他内容": { "keywords": [], "children": [], - "node_id": "python-6-99" + "node_id": "python-6-99", + "keywords_must": [], + "keywords_forbid": [] } }, { "接收电子邮件": { "keywords": [], "children": [], - "node_id": "python-6-100" + "node_id": "python-6-100", + "keywords_must": [], + "keywords_forbid": [] } }, { "POP和IMAP": { "keywords": [], "children": [], - "node_id": "python-6-101" + "node_id": "python-6-101", + "keywords_must": [], + "keywords_forbid": [] } }, { "交互式POP3示例": { "keywords": [], "children": [], - "node_id": "python-6-102" + "node_id": "python-6-102", + "keywords_must": [], + "keywords_forbid": [] } }, { "poplib.POP3类方法": { "keywords": [], "children": [], - "node_id": "python-6-103" + "node_id": "python-6-103", + "keywords_must": [], + "keywords_forbid": [] } }, { "客户端程序SMTP和POP3示例": { "keywords": [], "children": [], - "node_id": "python-6-104" + "node_id": "python-6-104", + "keywords_must": [], + "keywords_forbid": [] } }, { "交互式IMAP4示例": { "keywords": [], "children": [], - "node_id": "python-6-105" + "node_id": "python-6-105", + "keywords_must": [], + "keywords_forbid": [] } }, { "imaplib.IMAP4类中的常用方法": { "keywords": [], "children": [], - "node_id": "python-6-106" + "node_id": "python-6-106", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-472" + "node_id": "python-5-472", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4427,7 +5693,9 @@ "配置选项": { "keywords": [], "children": [], - "node_id": "python-6-107" + "node_id": "python-6-107", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4438,32 +5706,42 @@ "使用应用工厂函数": { "keywords": [], "children": [], - "node_id": "python-7-31" + "node_id": "python-7-31", + "keywords_must": [], + "keywords_forbid": [] } }, { "在蓝本中实现应用功能": { "keywords": [], "children": [], - "node_id": "python-7-32" + "node_id": "python-7-32", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-108" + "node_id": "python-6-108", + "keywords_must": [], + "keywords_forbid": [] } }, { "应用脚本": { "keywords": [], "children": [], - "node_id": "python-6-109" + "node_id": "python-6-109", + "keywords_must": [], + "keywords_forbid": [] } }, { "需求文件": { "keywords": [], "children": [], - "node_id": "python-6-110" + "node_id": "python-6-110", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4474,109 +5752,147 @@ "blog应用的代码审查": { "keywords": [], "children": [], - "node_id": "python-7-33" + "node_id": "python-7-33", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-111" + "node_id": "python-6-111", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建数据库": { "keywords": [], "children": [], - "node_id": "python-6-112" + "node_id": "python-6-112", + "keywords_must": [], + "keywords_forbid": [] } }, { "运行应用": { "keywords": [], "children": [], - "node_id": "python-6-113" + "node_id": "python-6-113", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-473" + "node_id": "python-5-473", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-825" + "node_id": "python-4-825", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask安装配置": { "keywords": [], "children": [], - "node_id": "python-4-826" + "node_id": "python-4-826", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask实现HTTP请求与响应": { "keywords": [], "children": [], - "node_id": "python-4-827" + "node_id": "python-4-827", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask cookie与session": { "keywords": [], "children": [], - "node_id": "python-4-828" + "node_id": "python-4-828", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask模板": { "keywords": [], "children": [], - "node_id": "python-4-829" + "node_id": "python-4-829", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask提交表单": { "keywords": [], "children": [], - "node_id": "python-4-830" + "node_id": "python-4-830", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask数据库操作": { "keywords": [], "children": [], - "node_id": "python-4-831" + "node_id": "python-4-831", + "keywords_must": [], + "keywords_forbid": [] } }, { "Bootstrap-Flask": { "keywords": [], "children": [], - "node_id": "python-4-832" + "node_id": "python-4-832", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask开发REST Web服务": { "keywords": [], "children": [], - "node_id": "python-4-833" + "node_id": "python-4-833", + "keywords_must": [], + "keywords_forbid": [] } }, { "部署日志与安全": { "keywords": [], "children": [], - "node_id": "python-4-834" + "node_id": "python-4-834", + "keywords_must": [], + "keywords_forbid": [] } }, { "Flask开发案例": { "keywords": [], "children": [], - "node_id": "python-4-835" + "node_id": "python-4-835", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "flask" + ], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4593,24 +5909,34 @@ "处理异常": { "keywords": [], "children": [], - "node_id": "python-4-868" + "node_id": "python-4-868", + "keywords_must": [], + "keywords_forbid": [] } }, { "解析链接": { "keywords": [], "children": [], - "node_id": "python-4-869" + "node_id": "python-4-869", + "keywords_must": [], + "keywords_forbid": [] } }, { "分析Robots协议": { "keywords": [], "children": [], - "node_id": "python-4-870" + "node_id": "python-4-870", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "urllib" + ], + "keywords_forbid": [] } }, { @@ -4622,28 +5948,36 @@ "RE(Regular Expression )": { "keywords": [], "children": [], - "node_id": "python-4-871" + "node_id": "python-4-871", + "keywords_must": [], + "keywords_forbid": [] } }, { "基础语法": { "keywords": [], "children": [], - "node_id": "python-4-872" + "node_id": "python-4-872", + "keywords_must": [], + "keywords_forbid": [] } }, { "标签匹配常用规则": { "keywords": [], "children": [], - "node_id": "python-4-873" + "node_id": "python-4-873", + "keywords_must": [], + "keywords_forbid": [] } }, { "简介/动机": { "keywords": [], "children": [], - "node_id": "python-4-874" + "node_id": "python-4-874", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4654,84 +5988,110 @@ "使用择一匹配符号匹配多个正则表达式模式": { "keywords": [], "children": [], - "node_id": "python-5-526" + "node_id": "python-5-526", + "keywords_must": [], + "keywords_forbid": [] } }, { "匹配任意单个字符": { "keywords": [], "children": [], - "node_id": "python-5-527" + "node_id": "python-5-527", + "keywords_must": [], + "keywords_forbid": [] } }, { "从字符串起始或者结尾或者单词边界匹配": { "keywords": [], "children": [], - "node_id": "python-5-528" + "node_id": "python-5-528", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建字符集": { "keywords": [], "children": [], - "node_id": "python-5-529" + "node_id": "python-5-529", + "keywords_must": [], + "keywords_forbid": [] } }, { "限定范围和否定": { "keywords": [], "children": [], - "node_id": "python-5-530" + "node_id": "python-5-530", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用闭包操作符实现存在性和频数匹配": { "keywords": [], "children": [], - "node_id": "python-5-531" + "node_id": "python-5-531", + "keywords_must": [], + "keywords_forbid": [] } }, { "表示字符集的特殊字符": { "keywords": [], "children": [], - "node_id": "python-5-532" + "node_id": "python-5-532", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用圆括号指定分组": { "keywords": [], "children": [], - "node_id": "python-5-533" + "node_id": "python-5-533", + "keywords_must": [], + "keywords_forbid": [] } }, { "扩展表示法": { "keywords": [], "children": [], - "node_id": "python-5-534" + "node_id": "python-5-534", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-875" + "node_id": "python-4-875", + "keywords_must": [], + "keywords_forbid": [] } }, { "一些正则表达式示例": { "keywords": [], "children": [], - "node_id": "python-4-876" + "node_id": "python-4-876", + "keywords_must": [], + "keywords_forbid": [] } }, { "更长的正则表达式示例": { "keywords": [], "children": [], - "node_id": "python-4-877" + "node_id": "python-4-877", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4743,38 +6103,50 @@ "Beautiful Soup简介": { "keywords": [], "children": [], - "node_id": "python-4-878" + "node_id": "python-4-878", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-879" + "node_id": "python-4-879", + "keywords_must": [], + "keywords_forbid": [] } }, { "Beautiful Soup对象": { "keywords": [], "children": [], - "node_id": "python-4-880" + "node_id": "python-4-880", + "keywords_must": [], + "keywords_forbid": [] } }, { "元素定位": { "keywords": [], "children": [], - "node_id": "python-4-881" + "node_id": "python-4-881", + "keywords_must": [], + "keywords_forbid": [] } }, { "文档树遍历与搜索": { "keywords": [], "children": [], - "node_id": "python-4-882" + "node_id": "python-4-882", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4786,45 +6158,61 @@ "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-883" + "node_id": "python-4-883", + "keywords_must": [], + "keywords_forbid": [] } }, { "lxml.etree": { "keywords": [], "children": [], - "node_id": "python-4-884" + "node_id": "python-4-884", + "keywords_must": [], + "keywords_forbid": [] } }, { "XPath选择器": { "keywords": [], "children": [], - "node_id": "python-4-885" + "node_id": "python-4-885", + "keywords_must": [], + "keywords_forbid": [] } }, { "find/findall": { "keywords": [], "children": [], - "node_id": "python-4-886" + "node_id": "python-4-886", + "keywords_must": [], + "keywords_forbid": [] } }, { "CSS选择器": { "keywords": [], "children": [], - "node_id": "python-4-887" + "node_id": "python-4-887", + "keywords_must": [], + "keywords_forbid": [] } }, { "解析HTML": { "keywords": [], "children": [], - "node_id": "python-4-888" + "node_id": "python-4-888", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "lxml" + ], + "keywords_forbid": [] } }, { @@ -4836,80 +6224,106 @@ "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-889" + "node_id": "python-4-889", + "keywords_must": [], + "keywords_forbid": [] } }, { "发送请求与HTTP请求类型": { "keywords": [], "children": [], - "node_id": "python-4-890" + "node_id": "python-4-890", + "keywords_must": [], + "keywords_forbid": [] } }, { "传递URL参数": { "keywords": [], "children": [], - "node_id": "python-4-891" + "node_id": "python-4-891", + "keywords_must": [], + "keywords_forbid": [] } }, { "响应内容": { "keywords": [], "children": [], - "node_id": "python-4-892" + "node_id": "python-4-892", + "keywords_must": [], + "keywords_forbid": [] } }, { "定制请求头": { "keywords": [], "children": [], - "node_id": "python-4-893" + "node_id": "python-4-893", + "keywords_must": [], + "keywords_forbid": [] } }, { "响应状态码": { "keywords": [], "children": [], - "node_id": "python-4-894" + "node_id": "python-4-894", + "keywords_must": [], + "keywords_forbid": [] } }, { "Cookie": { "keywords": [], "children": [], - "node_id": "python-4-895" + "node_id": "python-4-895", + "keywords_must": [], + "keywords_forbid": [] } }, { "POST请求": { "keywords": [], "children": [], - "node_id": "python-4-896" + "node_id": "python-4-896", + "keywords_must": [], + "keywords_forbid": [] } }, { "身份认证": { "keywords": [], "children": [], - "node_id": "python-4-897" + "node_id": "python-4-897", + "keywords_must": [], + "keywords_forbid": [] } }, { "基本用法": { "keywords": [], "children": [], - "node_id": "python-4-898" + "node_id": "python-4-898", + "keywords_must": [], + "keywords_forbid": [] } }, { "高级用法": { "keywords": [], "children": [], - "node_id": "python-4-899" + "node_id": "python-4-899", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "requests" + ], + "keywords_forbid": [] } }, { @@ -4921,28 +6335,36 @@ "Selenium简介": { "keywords": [], "children": [], - "node_id": "python-4-900" + "node_id": "python-4-900", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-901" + "node_id": "python-4-901", + "keywords_must": [], + "keywords_forbid": [] } }, { "单元素定位(find_element_id/name/xpath)": { "keywords": [], "children": [], - "node_id": "python-4-902" + "node_id": "python-4-902", + "keywords_must": [], + "keywords_forbid": [] } }, { "多元素定位(find_elements_id/name/xpath)": { "keywords": [], "children": [], - "node_id": "python-4-903" + "node_id": "python-4-903", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -4953,63 +6375,83 @@ "可管理属性创建": { "keywords": [], "children": [], - "node_id": "python-5-535" + "node_id": "python-5-535", + "keywords_must": [], + "keywords_forbid": [] } }, { "延迟计算属性": { "keywords": [], "children": [], - "node_id": "python-5-536" + "node_id": "python-5-536", + "keywords_must": [], + "keywords_forbid": [] } }, { "属性的代理访问": { "keywords": [], "children": [], - "node_id": "python-5-537" + "node_id": "python-5-537", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建用于计算的属性": { "keywords": [], "children": [], - "node_id": "python-5-538" + "node_id": "python-5-538", + "keywords_must": [], + "keywords_forbid": [] } }, { "为属性添加安全保护机制": { "keywords": [], "children": [], - "node_id": "python-5-539" + "node_id": "python-5-539", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-904" + "node_id": "python-4-904", + "keywords_must": [], + "keywords_forbid": [] } }, { "键盘和鼠标操作": { "keywords": [], "children": [], - "node_id": "python-4-905" + "node_id": "python-4-905", + "keywords_must": [], + "keywords_forbid": [] } }, { "WebDriver API": { "keywords": [], "children": [], - "node_id": "python-4-906" + "node_id": "python-4-906", + "keywords_must": [], + "keywords_forbid": [] } }, { "表单交互": { "keywords": [], "children": [], - "node_id": "python-4-907" + "node_id": "python-4-907", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -5021,143 +6463,187 @@ "Scrapy简介": { "keywords": [], "children": [], - "node_id": "python-4-908" + "node_id": "python-4-908", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-909" + "node_id": "python-4-909", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy框架组成": { "keywords": [], "children": [], - "node_id": "python-4-910" + "node_id": "python-4-910", + "keywords_must": [], + "keywords_forbid": [] } }, { "Item Pipeline": { "keywords": [], "children": [], - "node_id": "python-4-911" + "node_id": "python-4-911", + "keywords_must": [], + "keywords_forbid": [] } }, { "Downloader": { "keywords": [], "children": [], - "node_id": "python-4-912" + "node_id": "python-4-912", + "keywords_must": [], + "keywords_forbid": [] } }, { "Spiders": { "keywords": [], "children": [], - "node_id": "python-4-913" + "node_id": "python-4-913", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scheduler": { "keywords": [], "children": [], - "node_id": "python-4-914" + "node_id": "python-4-914", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy框架介绍": { "keywords": [], "children": [], - "node_id": "python-4-915" + "node_id": "python-4-915", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy入门": { "keywords": [], "children": [], - "node_id": "python-4-916" + "node_id": "python-4-916", + "keywords_must": [], + "keywords_forbid": [] } }, { "Selector的用法": { "keywords": [], "children": [], - "node_id": "python-4-917" + "node_id": "python-4-917", + "keywords_must": [], + "keywords_forbid": [] } }, { "Spider的用法": { "keywords": [], "children": [], - "node_id": "python-4-918" + "node_id": "python-4-918", + "keywords_must": [], + "keywords_forbid": [] } }, { "Downloader Middleware的用法": { "keywords": [], "children": [], - "node_id": "python-4-919" + "node_id": "python-4-919", + "keywords_must": [], + "keywords_forbid": [] } }, { "Spider Middleware的用法": { "keywords": [], "children": [], - "node_id": "python-4-920" + "node_id": "python-4-920", + "keywords_must": [], + "keywords_forbid": [] } }, { "Item Pipeline的用法": { "keywords": [], "children": [], - "node_id": "python-4-921" + "node_id": "python-4-921", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy对接Selenium": { "keywords": [], "children": [], - "node_id": "python-4-922" + "node_id": "python-4-922", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy对接Splash": { "keywords": [], "children": [], - "node_id": "python-4-923" + "node_id": "python-4-923", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy通用爬虫": { "keywords": [], "children": [], - "node_id": "python-4-924" + "node_id": "python-4-924", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapyrt的使用": { "keywords": [], "children": [], - "node_id": "python-4-925" + "node_id": "python-4-925", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy对接Docker": { "keywords": [], "children": [], - "node_id": "python-4-926" + "node_id": "python-4-926", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scrapy爬取新浪微博": { "keywords": [], "children": [], - "node_id": "python-4-927" + "node_id": "python-4-927", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "scrapy" + ], + "keywords_forbid": [] } }, { @@ -5169,24 +6655,32 @@ "pyspider框架介绍": { "keywords": [], "children": [], - "node_id": "python-4-976" + "node_id": "python-4-976", + "keywords_must": [], + "keywords_forbid": [] } }, { "pyspider的基本使用": { "keywords": [], "children": [], - "node_id": "python-4-977" + "node_id": "python-4-977", + "keywords_must": [], + "keywords_forbid": [] } }, { "pyspider用法详解": { "keywords": [], "children": [], - "node_id": "python-4-978" + "node_id": "python-4-978", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -5198,10 +6692,14 @@ "自动输入/OCR字符识别": { "keywords": [], "children": [], - "node_id": "python-4-934" + "node_id": "python-4-934", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -5213,24 +6711,32 @@ "Splash的使用": { "keywords": [], "children": [], - "node_id": "python-4-956" + "node_id": "python-4-956", + "keywords_must": [], + "keywords_forbid": [] } }, { "Splash负载均衡配置": { "keywords": [], "children": [], - "node_id": "python-4-957" + "node_id": "python-4-957", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Selenium爬取淘宝商品": { "keywords": [], "children": [], - "node_id": "python-4-958" + "node_id": "python-4-958", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -5242,20 +6748,28 @@ "模拟登录并爬取GitHub": { "keywords": [], "children": [], - "node_id": "python-4-968" + "node_id": "python-4-968", + "keywords_must": [], + "keywords_forbid": [] } }, { "Cookies池的搭建": { "keywords": [], "children": [], - "node_id": "python-4-969" + "node_id": "python-4-969", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -5272,45 +6786,62 @@ "Tkinter简介": { "keywords": [], "children": [], - "node_id": "python-4-988" + "node_id": "python-4-988", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-989" + "node_id": "python-4-989", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tkinter模块": { "keywords": [], "children": [], - "node_id": "python-4-990" + "node_id": "python-4-990", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tkinter控件": { "keywords": [], "children": [], - "node_id": "python-4-991" + "node_id": "python-4-991", + "keywords_must": [], + "keywords_forbid": [] } }, { "标准属性": { "keywords": [], "children": [], - "node_id": "python-4-992" + "node_id": "python-4-992", + "keywords_must": [], + "keywords_forbid": [] } }, { "几何管理": { "keywords": [], "children": [], - "node_id": "python-4-993" + "node_id": "python-4-993", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "tkinter", + "tk" + ], + "keywords_forbid": [] } }, { @@ -5322,66 +6853,88 @@ "PyQT简介": { "keywords": [], "children": [], - "node_id": "python-4-994" + "node_id": "python-4-994", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-995" + "node_id": "python-4-995", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT模块": { "keywords": [], "children": [], - "node_id": "python-4-996" + "node_id": "python-4-996", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT布局管理": { "keywords": [], "children": [], - "node_id": "python-4-997" + "node_id": "python-4-997", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT菜单和工具栏": { "keywords": [], "children": [], - "node_id": "python-4-998" + "node_id": "python-4-998", + "keywords_must": [], + "keywords_forbid": [] } }, { "事件和信号": { "keywords": [], "children": [], - "node_id": "python-4-999" + "node_id": "python-4-999", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT对话框": { "keywords": [], "children": [], - "node_id": "python-4-1000" + "node_id": "python-4-1000", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT控件": { "keywords": [], "children": [], - "node_id": "python-4-1001" + "node_id": "python-4-1001", + "keywords_must": [], + "keywords_forbid": [] } }, { "PyQT拖拽与绘图": { "keywords": [], "children": [], - "node_id": "python-4-1002" + "node_id": "python-4-1002", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "pyqt" + ], + "keywords_forbid": [] } }, { @@ -5393,72 +6946,99 @@ "WxPython简介": { "keywords": [], "children": [], - "node_id": "python-4-1003" + "node_id": "python-4-1003", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-1004" + "node_id": "python-4-1004", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython常用类": { "keywords": [], "children": [], - "node_id": "python-4-1005" + "node_id": "python-4-1005", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython布局管理": { "keywords": [], "children": [], - "node_id": "python-4-1006" + "node_id": "python-4-1006", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython事件处理": { "keywords": [], "children": [], - "node_id": "python-4-1007" + "node_id": "python-4-1007", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython对话框": { "keywords": [], "children": [], - "node_id": "python-4-1008" + "node_id": "python-4-1008", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython组件": { "keywords": [], "children": [], - "node_id": "python-4-1009" + "node_id": "python-4-1009", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython拖拽处理": { "keywords": [], "children": [], - "node_id": "python-4-1010" + "node_id": "python-4-1010", + "keywords_must": [], + "keywords_forbid": [] } }, { "WxPython绘图API": { "keywords": [], "children": [], - "node_id": "python-4-1011" + "node_id": "python-4-1011", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "wxpython", + "wx" + ], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -5480,52 +7060,77 @@ "NumPy的前世今生": { "keywords": [], "children": [], - "node_id": "python-4-1120" + "node_id": "python-4-1120", + "keywords_must": [], + "keywords_forbid": [] } }, { "NumPy数组vs Python列表": { "keywords": [], "children": [], - "node_id": "python-4-1121" + "node_id": "python-4-1121", + "keywords_must": [], + "keywords_forbid": [] } }, { "NumPy数组类型和属性": { "keywords": [], "children": [], - "node_id": "python-4-1122" + "node_id": "python-4-1122", + "keywords_must": [], + "keywords_forbid": [] } }, { "维、轴、秩": { "keywords": [], "children": [], - "node_id": "python-4-1123" + "node_id": "python-4-1123", + "keywords_must": [], + "keywords_forbid": [] } }, { "广播和矢量化": { "keywords": [], "children": [], - "node_id": "python-4-1124" + "node_id": "python-4-1124", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } }, { "安装配置": { "node_id": "python-3-196", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } }, { "创建数组": { "node_id": "python-3-197", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } }, { @@ -5537,66 +7142,89 @@ "索引": { "keywords": [], "children": [], - "node_id": "python-4-1125" + "node_id": "python-4-1125", + "keywords_must": [], + "keywords_forbid": [] } }, { "切片": { "keywords": [], "children": [], - "node_id": "python-4-1126" + "node_id": "python-4-1126", + "keywords_must": [], + "keywords_forbid": [] } }, { "改变数组结构": { "keywords": [], "children": [], - "node_id": "python-4-1127" + "node_id": "python-4-1127", + "keywords_must": [], + "keywords_forbid": [] } }, { "合并和拆分": { "keywords": [], "children": [], - "node_id": "python-4-1128" + "node_id": "python-4-1128", + "keywords_must": [], + "keywords_forbid": [] } }, { "复制": { "keywords": [], "children": [], - "node_id": "python-4-1129" + "node_id": "python-4-1129", + "keywords_must": [], + "keywords_forbid": [] } }, { "排序": { "keywords": [], "children": [], - "node_id": "python-4-1130" + "node_id": "python-4-1130", + "keywords_must": [], + "keywords_forbid": [] } }, { "查找": { "keywords": [], "children": [], - "node_id": "python-4-1131" + "node_id": "python-4-1131", + "keywords_must": [], + "keywords_forbid": [] } }, { "筛选": { "keywords": [], "children": [], - "node_id": "python-4-1132" + "node_id": "python-4-1132", + "keywords_must": [], + "keywords_forbid": [] } }, { "数组I/O": { "keywords": [], "children": [], - "node_id": "python-4-1133" + "node_id": "python-4-1133", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } }, { @@ -5608,52 +7236,71 @@ "np.nan和np.inf": { "keywords": [], "children": [], - "node_id": "python-4-1134" + "node_id": "python-4-1134", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数命名空间": { "keywords": [], "children": [], - "node_id": "python-4-1135" + "node_id": "python-4-1135", + "keywords_must": [], + "keywords_forbid": [] } }, { "数学函数": { "keywords": [], "children": [], - "node_id": "python-4-1136" + "node_id": "python-4-1136", + "keywords_must": [], + "keywords_forbid": [] } }, { "统计函数": { "keywords": [], "children": [], - "node_id": "python-4-1137" + "node_id": "python-4-1137", + "keywords_must": [], + "keywords_forbid": [] } }, { "插值函数": { "keywords": [], "children": [], - "node_id": "python-4-1138" + "node_id": "python-4-1138", + "keywords_must": [], + "keywords_forbid": [] } }, { "多项式拟合函数": { "keywords": [], "children": [], - "node_id": "python-4-1139" + "node_id": "python-4-1139", + "keywords_must": [], + "keywords_forbid": [] } }, { "自定义广播函数": { "keywords": [], "children": [], - "node_id": "python-4-1140" + "node_id": "python-4-1140", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } }, { @@ -5665,17 +7312,26 @@ "创建掩码数组": { "keywords": [], "children": [], - "node_id": "python-4-1141" + "node_id": "python-4-1141", + "keywords_must": [], + "keywords_forbid": [] } }, { "访问掩码数组": { "keywords": [], "children": [], - "node_id": "python-4-1142" + "node_id": "python-4-1142", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } }, { @@ -5687,24 +7343,35 @@ "创建矩阵": { "keywords": [], "children": [], - "node_id": "python-4-1143" + "node_id": "python-4-1143", + "keywords_must": [], + "keywords_forbid": [] } }, { "矩阵特有属性": { "keywords": [], "children": [], - "node_id": "python-4-1144" + "node_id": "python-4-1144", + "keywords_must": [], + "keywords_forbid": [] } }, { "矩阵乘法": { "keywords": [], "children": [], - "node_id": "python-4-1145" + "node_id": "python-4-1145", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } }, { @@ -5716,34 +7383,49 @@ "随机数": { "keywords": [], "children": [], - "node_id": "python-4-1146" + "node_id": "python-4-1146", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机抽样": { "keywords": [], "children": [], - "node_id": "python-4-1147" + "node_id": "python-4-1147", + "keywords_must": [], + "keywords_forbid": [] } }, { "正态分布": { "keywords": [], "children": [], - "node_id": "python-4-1148" + "node_id": "python-4-1148", + "keywords_must": [], + "keywords_forbid": [] } }, { "伪随机数的深度思考": { "keywords": [], "children": [], - "node_id": "python-4-1149" + "node_id": "python-4-1149", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "numpy", + "np" + ], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -5760,17 +7442,26 @@ "Panda的特点": { "keywords": [], "children": [], - "node_id": "python-4-1150" + "node_id": "python-4-1150", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装和使用": { "keywords": [], "children": [], - "node_id": "python-4-1151" + "node_id": "python-4-1151", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "pandas", + "pd" + ], + "keywords_forbid": [] } }, { @@ -5782,24 +7473,35 @@ "索引数组Index": { "keywords": [], "children": [], - "node_id": "python-4-1152" + "node_id": "python-4-1152", + "keywords_must": [], + "keywords_forbid": [] } }, { "带标签的一维同构数组Series": { "keywords": [], "children": [], - "node_id": "python-4-1153" + "node_id": "python-4-1153", + "keywords_must": [], + "keywords_forbid": [] } }, { "带标签的二维异构表格DataFrame": { "keywords": [], "children": [], - "node_id": "python-4-1154" + "node_id": "python-4-1154", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "pandas", + "pd" + ], + "keywords_forbid": [] } }, { @@ -5811,45 +7513,62 @@ "数据预览": { "keywords": [], "children": [], - "node_id": "python-4-1155" + "node_id": "python-4-1155", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据选择": { "keywords": [], "children": [], - "node_id": "python-4-1156" + "node_id": "python-4-1156", + "keywords_must": [], + "keywords_forbid": [] } }, { "改变数据结构": { "keywords": [], "children": [], - "node_id": "python-4-1157" + "node_id": "python-4-1157", + "keywords_must": [], + "keywords_forbid": [] } }, { "改变数据类型": { "keywords": [], "children": [], - "node_id": "python-4-1158" + "node_id": "python-4-1158", + "keywords_must": [], + "keywords_forbid": [] } }, { "广播与矢量化运算": { "keywords": [], "children": [], - "node_id": "python-4-1159" + "node_id": "python-4-1159", + "keywords_must": [], + "keywords_forbid": [] } }, { "行列级广播函数": { "keywords": [], "children": [], - "node_id": "python-4-1160" + "node_id": "python-4-1160", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "pandas", + "pd" + ], + "keywords_forbid": [] } }, { @@ -5861,62 +7580,85 @@ "分组": { "keywords": [], "children": [], - "node_id": "python-4-1161" + "node_id": "python-4-1161", + "keywords_must": [], + "keywords_forbid": [] } }, { "聚合": { "keywords": [], "children": [], - "node_id": "python-4-1162" + "node_id": "python-4-1162", + "keywords_must": [], + "keywords_forbid": [] } }, { "层次化索引": { "keywords": [], "children": [], - "node_id": "python-4-1163" + "node_id": "python-4-1163", + "keywords_must": [], + "keywords_forbid": [] } }, { "表级广播函数": { "keywords": [], "children": [], - "node_id": "python-4-1164" + "node_id": "python-4-1164", + "keywords_must": [], + "keywords_forbid": [] } }, { "日期时间索引对象": { "keywords": [], "children": [], - "node_id": "python-4-1165" + "node_id": "python-4-1165", + "keywords_must": [], + "keywords_forbid": [] } }, { "透视表": { "keywords": [], "children": [], - "node_id": "python-4-1166" + "node_id": "python-4-1166", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据可视化": { "keywords": [], "children": [], - "node_id": "python-4-1167" + "node_id": "python-4-1167", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据I/O": { "keywords": [], "children": [], - "node_id": "python-4-1168" + "node_id": "python-4-1168", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "pandas", + "pd" + ], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -5928,7 +7670,12 @@ "安装配置": { "node_id": "python-3-207", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "matplotlib", + "matplot" + ], + "keywords_forbid": [] } }, { @@ -5940,38 +7687,53 @@ "画布": { "keywords": [], "children": [], - "node_id": "python-4-1169" + "node_id": "python-4-1169", + "keywords_must": [], + "keywords_forbid": [] } }, { "子图与子图布局": { "keywords": [], "children": [], - "node_id": "python-4-1170" + "node_id": "python-4-1170", + "keywords_must": [], + "keywords_forbid": [] } }, { "坐标轴与刻度的名称": { "keywords": [], "children": [], - "node_id": "python-4-1171" + "node_id": "python-4-1171", + "keywords_must": [], + "keywords_forbid": [] } }, { "图例和文本标注": { "keywords": [], "children": [], - "node_id": "python-4-1172" + "node_id": "python-4-1172", + "keywords_must": [], + "keywords_forbid": [] } }, { "显示和保存": { "keywords": [], "children": [], - "node_id": "python-4-1173" + "node_id": "python-4-1173", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "matplotlib", + "matplot" + ], + "keywords_forbid": [] } }, { @@ -5983,52 +7745,71 @@ "曲线图": { "keywords": [], "children": [], - "node_id": "python-4-1174" + "node_id": "python-4-1174", + "keywords_must": [], + "keywords_forbid": [] } }, { "散点图": { "keywords": [], "children": [], - "node_id": "python-4-1175" + "node_id": "python-4-1175", + "keywords_must": [], + "keywords_forbid": [] } }, { "直方图": { "keywords": [], "children": [], - "node_id": "python-4-1176" + "node_id": "python-4-1176", + "keywords_must": [], + "keywords_forbid": [] } }, { "饼图": { "keywords": [], "children": [], - "node_id": "python-4-1177" + "node_id": "python-4-1177", + "keywords_must": [], + "keywords_forbid": [] } }, { "箱线图": { "keywords": [], "children": [], - "node_id": "python-4-1178" + "node_id": "python-4-1178", + "keywords_must": [], + "keywords_forbid": [] } }, { "绘制图像": { "keywords": [], "children": [], - "node_id": "python-4-1179" + "node_id": "python-4-1179", + "keywords_must": [], + "keywords_forbid": [] } }, { "极坐标绘图": { "keywords": [], "children": [], - "node_id": "python-4-1180" + "node_id": "python-4-1180", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "matplotlib", + "matplot" + ], + "keywords_forbid": [] } }, { @@ -6040,69 +7821,94 @@ "画布设置": { "keywords": [], "children": [], - "node_id": "python-4-1181" + "node_id": "python-4-1181", + "keywords_must": [], + "keywords_forbid": [] } }, { "子图布局": { "keywords": [], "children": [], - "node_id": "python-4-1182" + "node_id": "python-4-1182", + "keywords_must": [], + "keywords_forbid": [] } }, { "颜色": { "keywords": [], "children": [], - "node_id": "python-4-1183" + "node_id": "python-4-1183", + "keywords_must": [], + "keywords_forbid": [] } }, { "线条和点的样式": { "keywords": [], "children": [], - "node_id": "python-4-1184" + "node_id": "python-4-1184", + "keywords_must": [], + "keywords_forbid": [] } }, { "坐标轴": { "keywords": [], "children": [], - "node_id": "python-4-1185" + "node_id": "python-4-1185", + "keywords_must": [], + "keywords_forbid": [] } }, { "刻度": { "keywords": [], "children": [], - "node_id": "python-4-1186" + "node_id": "python-4-1186", + "keywords_must": [], + "keywords_forbid": [] } }, { "文本": { "keywords": [], "children": [], - "node_id": "python-4-1187" + "node_id": "python-4-1187", + "keywords_must": [], + "keywords_forbid": [] } }, { "图例": { "keywords": [], "children": [], - "node_id": "python-4-1188" + "node_id": "python-4-1188", + "keywords_must": [], + "keywords_forbid": [] } }, { "网格设置": { "keywords": [], "children": [], - "node_id": "python-4-1189" + "node_id": "python-4-1189", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "matplotlib", + "matplot" + ], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6114,14 +7920,22 @@ "SciPy概览": { "node_id": "python-3-212", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } }, { "安装配置": { "node_id": "python-3-213", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } }, { @@ -6133,24 +7947,34 @@ "一维插值": { "keywords": [], "children": [], - "node_id": "python-4-1192" + "node_id": "python-4-1192", + "keywords_must": [], + "keywords_forbid": [] } }, { "二维插值": { "keywords": [], "children": [], - "node_id": "python-4-1193" + "node_id": "python-4-1193", + "keywords_must": [], + "keywords_forbid": [] } }, { "离散数据插值到网格": { "keywords": [], "children": [], - "node_id": "python-4-1194" + "node_id": "python-4-1194", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } }, { @@ -6162,24 +7986,34 @@ "最小二乘法拟合": { "keywords": [], "children": [], - "node_id": "python-4-1195" + "node_id": "python-4-1195", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用curve_fit函数拟合": { "keywords": [], "children": [], - "node_id": "python-4-1196" + "node_id": "python-4-1196", + "keywords_must": [], + "keywords_forbid": [] } }, { "多项式拟合函数": { "keywords": [], "children": [], - "node_id": "python-4-1197" + "node_id": "python-4-1197", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } }, { @@ -6191,24 +8025,34 @@ "时域到频域的转换": { "keywords": [], "children": [], - "node_id": "python-4-1198" + "node_id": "python-4-1198", + "keywords_must": [], + "keywords_forbid": [] } }, { "一维傅里叶变换的应用": { "keywords": [], "children": [], - "node_id": "python-4-1199" + "node_id": "python-4-1199", + "keywords_must": [], + "keywords_forbid": [] } }, { "二维傅里叶变换的应用": { "keywords": [], "children": [], - "node_id": "python-4-1200" + "node_id": "python-4-1200", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } }, { @@ -6220,31 +8064,43 @@ "图像卷积": { "keywords": [], "children": [], - "node_id": "python-4-1201" + "node_id": "python-4-1201", + "keywords_must": [], + "keywords_forbid": [] } }, { "边缘检测": { "keywords": [], "children": [], - "node_id": "python-4-1202" + "node_id": "python-4-1202", + "keywords_must": [], + "keywords_forbid": [] } }, { "侵蚀和膨胀": { "keywords": [], "children": [], - "node_id": "python-4-1203" + "node_id": "python-4-1203", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像测量": { "keywords": [], "children": [], - "node_id": "python-4-1204" + "node_id": "python-4-1204", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "scipy" + ], + "keywords_forbid": [] } }, { @@ -6256,24 +8112,32 @@ "对给定函数的定积分": { "keywords": [], "children": [], - "node_id": "python-4-1205" + "node_id": "python-4-1205", + "keywords_must": [], + "keywords_forbid": [] } }, { "对给定样本的定积分": { "keywords": [], "children": [], - "node_id": "python-4-1206" + "node_id": "python-4-1206", + "keywords_must": [], + "keywords_forbid": [] } }, { "二重定积分": { "keywords": [], "children": [], - "node_id": "python-4-1207" + "node_id": "python-4-1207", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6285,17 +8149,23 @@ "非线性方程": { "keywords": [], "children": [], - "node_id": "python-4-1208" + "node_id": "python-4-1208", + "keywords_must": [], + "keywords_forbid": [] } }, { "非线性方程组": { "keywords": [], "children": [], - "node_id": "python-4-1209" + "node_id": "python-4-1209", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6307,38 +8177,50 @@ "计算矩阵的行列式": { "keywords": [], "children": [], - "node_id": "python-4-1210" + "node_id": "python-4-1210", + "keywords_must": [], + "keywords_forbid": [] } }, { "求解逆矩阵": { "keywords": [], "children": [], - "node_id": "python-4-1211" + "node_id": "python-4-1211", + "keywords_must": [], + "keywords_forbid": [] } }, { "计算特征向量和特征值": { "keywords": [], "children": [], - "node_id": "python-4-1212" + "node_id": "python-4-1212", + "keywords_must": [], + "keywords_forbid": [] } }, { "矩阵的奇异值分解": { "keywords": [], "children": [], - "node_id": "python-4-1213" + "node_id": "python-4-1213", + "keywords_must": [], + "keywords_forbid": [] } }, { "求解线性方程组": { "keywords": [], "children": [], - "node_id": "python-4-1214" + "node_id": "python-4-1214", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6350,17 +8232,23 @@ "k-means聚类": { "keywords": [], "children": [], - "node_id": "python-4-1215" + "node_id": "python-4-1215", + "keywords_must": [], + "keywords_forbid": [] } }, { "层次聚类": { "keywords": [], "children": [], - "node_id": "python-4-1216" + "node_id": "python-4-1216", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6372,20 +8260,28 @@ "空间旋转的表述": { "keywords": [], "children": [], - "node_id": "python-4-1217" + "node_id": "python-4-1217", + "keywords_must": [], + "keywords_forbid": [] } }, { "三维旋转": { "keywords": [], "children": [], - "node_id": "python-4-1218" + "node_id": "python-4-1218", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6406,25 +8302,33 @@ "行中的值满足某个条件": { "keywords": [], "children": [], - "node_id": "python-5-814" + "node_id": "python-5-814", + "keywords_must": [], + "keywords_forbid": [] } }, { "行中的值属于某个集合": { "keywords": [], "children": [], - "node_id": "python-5-815" + "node_id": "python-5-815", + "keywords_must": [], + "keywords_forbid": [] } }, { "行中的值匹配于某个模式/ 正则表达式": { "keywords": [], "children": [], - "node_id": "python-5-816" + "node_id": "python-5-816", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1227" + "node_id": "python-4-1227", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6435,56 +8339,76 @@ "列索引值": { "keywords": [], "children": [], - "node_id": "python-5-817" + "node_id": "python-5-817", + "keywords_must": [], + "keywords_forbid": [] } }, { "列标题": { "keywords": [], "children": [], - "node_id": "python-5-818" + "node_id": "python-5-818", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1228" + "node_id": "python-4-1228", + "keywords_must": [], + "keywords_forbid": [] } }, { "选取连续的行": { "keywords": [], "children": [], - "node_id": "python-4-1229" + "node_id": "python-4-1229", + "keywords_must": [], + "keywords_forbid": [] } }, { "添加标题行": { "keywords": [], "children": [], - "node_id": "python-4-1230" + "node_id": "python-4-1230", + "keywords_must": [], + "keywords_forbid": [] } }, { "读取多个CSV文件": { "keywords": [], "children": [], - "node_id": "python-4-1231" + "node_id": "python-4-1231", + "keywords_must": [], + "keywords_forbid": [] } }, { "从多个文件中连接数据": { "keywords": [], "children": [], - "node_id": "python-4-1232" + "node_id": "python-4-1232", + "keywords_must": [], + "keywords_forbid": [] } }, { "计算每个文件中值的总和与均值": { "keywords": [], "children": [], - "node_id": "python-4-1233" + "node_id": "python-4-1233", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "csv" + ], + "keywords_forbid": [] } }, { @@ -6496,7 +8420,9 @@ "内省Excel工作簿": { "keywords": [], "children": [], - "node_id": "python-4-1234" + "node_id": "python-4-1234", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6507,25 +8433,33 @@ "读写Excel文件": { "keywords": [], "children": [], - "node_id": "python-5-819" + "node_id": "python-5-819", + "keywords_must": [], + "keywords_forbid": [] } }, { "筛选特定行": { "keywords": [], "children": [], - "node_id": "python-5-820" + "node_id": "python-5-820", + "keywords_must": [], + "keywords_forbid": [] } }, { "选取特定列": { "keywords": [], "children": [], - "node_id": "python-5-821" + "node_id": "python-5-821", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1235" + "node_id": "python-4-1235", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6536,25 +8470,33 @@ "在所有工作表中筛选特定行": { "keywords": [], "children": [], - "node_id": "python-5-822" + "node_id": "python-5-822", + "keywords_must": [], + "keywords_forbid": [] } }, { "在所有工作表中选取特定列": { "keywords": [], "children": [], - "node_id": "python-5-823" + "node_id": "python-5-823", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1236" + "node_id": "python-4-1236", + "keywords_must": [], + "keywords_forbid": [] } }, { "在Excel工作簿中读取一组工作表": { "keywords": [], "children": [], - "node_id": "python-4-1237" + "node_id": "python-4-1237", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6565,21 +8507,31 @@ "工作表计数以及每个工作表中的行列计数": { "keywords": [], "children": [], - "node_id": "python-5-824" + "node_id": "python-5-824", + "keywords_must": [], + "keywords_forbid": [] } }, { "从多个工作簿中连接数据": { "keywords": [], "children": [], - "node_id": "python-5-825" + "node_id": "python-5-825", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1238" + "node_id": "python-4-1238", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "excel" + ], + "keywords_forbid": [] } }, { @@ -6591,7 +8543,9 @@ "变化的分类": { "keywords": [], "children": [], - "node_id": "python-4-1402" + "node_id": "python-4-1402", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6602,25 +8556,33 @@ "曲线拟合": { "keywords": [], "children": [], - "node_id": "python-5-1324" + "node_id": "python-5-1324", + "keywords_must": [], + "keywords_forbid": [] } }, { "从时间序列中去除趋势": { "keywords": [], "children": [], - "node_id": "python-5-1325" + "node_id": "python-5-1325", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1403" + "node_id": "python-4-1403", + "keywords_must": [], + "keywords_forbid": [] } }, { "包含周期性的序列数据分析": { "keywords": [], "children": [], - "node_id": "python-4-1404" + "node_id": "python-4-1404", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6631,18 +8593,24 @@ "滤波": { "keywords": [], "children": [], - "node_id": "python-5-1326" + "node_id": "python-5-1326", + "keywords_must": [], + "keywords_forbid": [] } }, { "差分": { "keywords": [], "children": [], - "node_id": "python-5-1327" + "node_id": "python-5-1327", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1405" + "node_id": "python-4-1405", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6653,25 +8621,33 @@ "平稳过程": { "keywords": [], "children": [], - "node_id": "python-5-1328" + "node_id": "python-5-1328", + "keywords_must": [], + "keywords_forbid": [] } }, { "自相关和相关图": { "keywords": [], "children": [], - "node_id": "python-5-1329" + "node_id": "python-5-1329", + "keywords_must": [], + "keywords_forbid": [] } }, { "自协方差和自相关函数的估计": { "keywords": [], "children": [], - "node_id": "python-5-1330" + "node_id": "python-5-1330", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1406" + "node_id": "python-4-1406", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6682,59 +8658,79 @@ "有用的方法": { "keywords": [], "children": [], - "node_id": "python-5-1331" + "node_id": "python-5-1331", + "keywords_must": [], + "keywords_forbid": [] } }, { "自回归过程": { "keywords": [], "children": [], - "node_id": "python-5-1332" + "node_id": "python-5-1332", + "keywords_must": [], + "keywords_forbid": [] } }, { "估计AR过程的参数": { "keywords": [], "children": [], - "node_id": "python-5-1333" + "node_id": "python-5-1333", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1407" + "node_id": "python-4-1407", + "keywords_must": [], + "keywords_forbid": [] } }, { "混合ARMA模型": { "keywords": [], "children": [], - "node_id": "python-4-1408" + "node_id": "python-4-1408", + "keywords_must": [], + "keywords_forbid": [] } }, { "集成ARMA模型": { "keywords": [], "children": [], - "node_id": "python-4-1409" + "node_id": "python-4-1409", + "keywords_must": [], + "keywords_forbid": [] } }, { "一个特殊的场景": { "keywords": [], "children": [], - "node_id": "python-4-1410" + "node_id": "python-4-1410", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据缺失": { "keywords": [], "children": [], - "node_id": "python-4-1411" + "node_id": "python-4-1411", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6751,14 +8747,18 @@ "Scikit-learn概览": { "keywords": [], "children": [], - "node_id": "python-4-1308" + "node_id": "python-4-1308", + "keywords_must": [], + "keywords_forbid": [] } }, { "安装配置": { "keywords": [], "children": [], - "node_id": "python-4-1309" + "node_id": "python-4-1309", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6769,25 +8769,33 @@ "Scikit-learn自带的数据集": { "keywords": [], "children": [], - "node_id": "python-5-980" + "node_id": "python-5-980", + "keywords_must": [], + "keywords_forbid": [] } }, { "样本生成器": { "keywords": [], "children": [], - "node_id": "python-5-981" + "node_id": "python-5-981", + "keywords_must": [], + "keywords_forbid": [] } }, { "加载其他数据集": { "keywords": [], "children": [], - "node_id": "python-5-982" + "node_id": "python-5-982", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1310" + "node_id": "python-4-1310", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6798,46 +8806,60 @@ "标准化": { "keywords": [], "children": [], - "node_id": "python-5-983" + "node_id": "python-5-983", + "keywords_must": [], + "keywords_forbid": [] } }, { "归一化": { "keywords": [], "children": [], - "node_id": "python-5-984" + "node_id": "python-5-984", + "keywords_must": [], + "keywords_forbid": [] } }, { "正则化": { "keywords": [], "children": [], - "node_id": "python-5-985" + "node_id": "python-5-985", + "keywords_must": [], + "keywords_forbid": [] } }, { "离散化": { "keywords": [], "children": [], - "node_id": "python-5-986" + "node_id": "python-5-986", + "keywords_must": [], + "keywords_forbid": [] } }, { "特征编码": { "keywords": [], "children": [], - "node_id": "python-5-987" + "node_id": "python-5-987", + "keywords_must": [], + "keywords_forbid": [] } }, { "缺失值补全": { "keywords": [], "children": [], - "node_id": "python-5-988" + "node_id": "python-5-988", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1311" + "node_id": "python-4-1311", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6848,53 +8870,69 @@ "K-近邻分类": { "keywords": [], "children": [], - "node_id": "python-5-989" + "node_id": "python-5-989", + "keywords_must": [], + "keywords_forbid": [] } }, { "贝叶斯分类": { "keywords": [], "children": [], - "node_id": "python-5-990" + "node_id": "python-5-990", + "keywords_must": [], + "keywords_forbid": [] } }, { "决策树分类": { "keywords": [], "children": [], - "node_id": "python-5-991" + "node_id": "python-5-991", + "keywords_must": [], + "keywords_forbid": [] } }, { "支持向量机分类": { "keywords": [], "children": [], - "node_id": "python-5-992" + "node_id": "python-5-992", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机森林分类": { "keywords": [], "children": [], - "node_id": "python-5-993" + "node_id": "python-5-993", + "keywords_must": [], + "keywords_forbid": [] } }, { "集成学习Bagging/Boosting": { "keywords": [], "children": [], - "node_id": "python-5-994" + "node_id": "python-5-994", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络模型": { "keywords": [], "children": [], - "node_id": "python-5-995" + "node_id": "python-5-995", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1312" + "node_id": "python-4-1312", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6905,53 +8943,69 @@ "线性回归": { "keywords": [], "children": [], - "node_id": "python-5-996" + "node_id": "python-5-996", + "keywords_must": [], + "keywords_forbid": [] } }, { "Lasso回归": { "keywords": [], "children": [], - "node_id": "python-5-997" + "node_id": "python-5-997", + "keywords_must": [], + "keywords_forbid": [] } }, { "支持向量机回归": { "keywords": [], "children": [], - "node_id": "python-5-998" + "node_id": "python-5-998", + "keywords_must": [], + "keywords_forbid": [] } }, { "K-近邻回归": { "keywords": [], "children": [], - "node_id": "python-5-999" + "node_id": "python-5-999", + "keywords_must": [], + "keywords_forbid": [] } }, { "决策树回归": { "keywords": [], "children": [], - "node_id": "python-5-1000" + "node_id": "python-5-1000", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机森林回归": { "keywords": [], "children": [], - "node_id": "python-5-1001" + "node_id": "python-5-1001", + "keywords_must": [], + "keywords_forbid": [] } }, { "逻辑回归": { "keywords": [], "children": [], - "node_id": "python-5-1002" + "node_id": "python-5-1002", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1313" + "node_id": "python-4-1313", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6962,28 +9016,36 @@ "K-Means聚类": { "keywords": [], "children": [], - "node_id": "python-5-1003" + "node_id": "python-5-1003", + "keywords_must": [], + "keywords_forbid": [] } }, { "均值漂移聚类": { "keywords": [], "children": [], - "node_id": "python-5-1004" + "node_id": "python-5-1004", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于密度的空间聚类": { "keywords": [], "children": [], - "node_id": "python-5-1005" + "node_id": "python-5-1005", + "keywords_must": [], + "keywords_forbid": [] } }, { "谱聚类": { "keywords": [], "children": [], - "node_id": "python-5-1006" + "node_id": "python-5-1006", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -6994,36 +9056,48 @@ "自下而上的方法": { "keywords": [], "children": [], - "node_id": "python-6-174" + "node_id": "python-6-174", + "keywords_must": [], + "keywords_forbid": [] } }, { "聚类之间的距离": { "keywords": [], "children": [], - "node_id": "python-6-175" + "node_id": "python-6-175", + "keywords_must": [], + "keywords_forbid": [] } }, { "自上而下的方法": { "keywords": [], "children": [], - "node_id": "python-6-176" + "node_id": "python-6-176", + "keywords_must": [], + "keywords_forbid": [] } }, { "图论方法": { "keywords": [], "children": [], - "node_id": "python-6-177" + "node_id": "python-6-177", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1007" + "node_id": "python-5-1007", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1314" + "node_id": "python-4-1314", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7034,32 +9108,42 @@ "主成分分析": { "keywords": [], "children": [], - "node_id": "python-5-1008" + "node_id": "python-5-1008", + "keywords_must": [], + "keywords_forbid": [] } }, { "因子分析": { "keywords": [], "children": [], - "node_id": "python-5-1009" + "node_id": "python-5-1009", + "keywords_must": [], + "keywords_forbid": [] } }, { "截断奇异值分解": { "keywords": [], "children": [], - "node_id": "python-5-1010" + "node_id": "python-5-1010", + "keywords_must": [], + "keywords_forbid": [] } }, { "独立成分分析ICA(Independent Component Analysis)": { "keywords": [], "children": [], - "node_id": "python-5-1011" + "node_id": "python-5-1011", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1315" + "node_id": "python-4-1315", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7070,42 +9154,56 @@ "估计器得分": { "keywords": [], "children": [], - "node_id": "python-5-1012" + "node_id": "python-5-1012", + "keywords_must": [], + "keywords_forbid": [] } }, { "交叉验证": { "keywords": [], "children": [], - "node_id": "python-5-1013" + "node_id": "python-5-1013", + "keywords_must": [], + "keywords_forbid": [] } }, { "评价指标": { "keywords": [], "children": [], - "node_id": "python-5-1014" + "node_id": "python-5-1014", + "keywords_must": [], + "keywords_forbid": [] } }, { "参数调优": { "keywords": [], "children": [], - "node_id": "python-5-1015" + "node_id": "python-5-1015", + "keywords_must": [], + "keywords_forbid": [] } }, { "模型持久化": { "keywords": [], "children": [], - "node_id": "python-5-1016" + "node_id": "python-5-1016", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1316" + "node_id": "python-4-1316", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7121,60 +9219,78 @@ "人工智能发展历史": { "keywords": [], "children": [], - "node_id": "python-5-1017" + "node_id": "python-5-1017", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经元": { "keywords": [], "children": [], - "node_id": "python-5-1018" + "node_id": "python-5-1018", + "keywords_must": [], + "keywords_forbid": [] } }, { "BP神经网络": { "keywords": [], "children": [], - "node_id": "python-5-1019" + "node_id": "python-5-1019", + "keywords_must": [], + "keywords_forbid": [] } }, { "梯度下降": { "keywords": [], "children": [], - "node_id": "python-5-1020" + "node_id": "python-5-1020", + "keywords_must": [], + "keywords_forbid": [] } }, { "激励函数": { "keywords": [], "children": [], - "node_id": "python-5-1021" + "node_id": "python-5-1021", + "keywords_must": [], + "keywords_forbid": [] } }, { "过拟合、欠拟合": { "keywords": [], "children": [], - "node_id": "python-5-1022" + "node_id": "python-5-1022", + "keywords_must": [], + "keywords_forbid": [] } }, { "优化器Optimizer": { "keywords": [], "children": [], - "node_id": "python-5-1023" + "node_id": "python-5-1023", + "keywords_must": [], + "keywords_forbid": [] } }, { "常用开发工具": { "keywords": [], "children": [], - "node_id": "python-5-1024" + "node_id": "python-5-1024", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1317" + "node_id": "python-4-1317", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7185,32 +9301,42 @@ "Windows搭建深度学习环境": { "keywords": [], "children": [], - "node_id": "python-5-1025" + "node_id": "python-5-1025", + "keywords_must": [], + "keywords_forbid": [] } }, { "Linux搭建深度学习环境": { "keywords": [], "children": [], - "node_id": "python-5-1026" + "node_id": "python-5-1026", + "keywords_must": [], + "keywords_forbid": [] } }, { "MacOS搭建深度学习环境": { "keywords": [], "children": [], - "node_id": "python-5-1027" + "node_id": "python-5-1027", + "keywords_must": [], + "keywords_forbid": [] } }, { "CPU/GPU环境搭建": { "keywords": [], "children": [], - "node_id": "python-5-1028" + "node_id": "python-5-1028", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1318" + "node_id": "python-4-1318", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7221,53 +9347,69 @@ "Theano基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1029" + "node_id": "python-5-1029", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义Layer": { "keywords": [], "children": [], - "node_id": "python-5-1030" + "node_id": "python-5-1030", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN": { "keywords": [], "children": [], - "node_id": "python-5-1031" + "node_id": "python-5-1031", + "keywords_must": [], + "keywords_forbid": [] } }, { "RNN(GRU/LSTM)": { "keywords": [], "children": [], - "node_id": "python-5-1032" + "node_id": "python-5-1032", + "keywords_must": [], + "keywords_forbid": [] } }, { "Autoencoder": { "keywords": [], "children": [], - "node_id": "python-5-1033" + "node_id": "python-5-1033", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络参数保存": { "keywords": [], "children": [], - "node_id": "python-5-1034" + "node_id": "python-5-1034", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络性能评价": { "keywords": [], "children": [], - "node_id": "python-5-1035" + "node_id": "python-5-1035", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1319" + "node_id": "python-4-1319", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7278,95 +9420,123 @@ "TensorFlow基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1036" + "node_id": "python-5-1036", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tensor": { "keywords": [], "children": [], - "node_id": "python-5-1037" + "node_id": "python-5-1037", + "keywords_must": [], + "keywords_forbid": [] } }, { "Session": { "keywords": [], "children": [], - "node_id": "python-5-1038" + "node_id": "python-5-1038", + "keywords_must": [], + "keywords_forbid": [] } }, { "Variable": { "keywords": [], "children": [], - "node_id": "python-5-1039" + "node_id": "python-5-1039", + "keywords_must": [], + "keywords_forbid": [] } }, { "Placeholder": { "keywords": [], "children": [], - "node_id": "python-5-1040" + "node_id": "python-5-1040", + "keywords_must": [], + "keywords_forbid": [] } }, { "Dropout": { "keywords": [], "children": [], - "node_id": "python-5-1041" + "node_id": "python-5-1041", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tensorboard": { "keywords": [], "children": [], - "node_id": "python-5-1042" + "node_id": "python-5-1042", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN": { "keywords": [], "children": [], - "node_id": "python-5-1043" + "node_id": "python-5-1043", + "keywords_must": [], + "keywords_forbid": [] } }, { "RNN(GRU/LSTM)": { "keywords": [], "children": [], - "node_id": "python-5-1044" + "node_id": "python-5-1044", + "keywords_must": [], + "keywords_forbid": [] } }, { "Autoencoder": { "keywords": [], "children": [], - "node_id": "python-5-1045" + "node_id": "python-5-1045", + "keywords_must": [], + "keywords_forbid": [] } }, { "GNN": { "keywords": [], "children": [], - "node_id": "python-5-1046" + "node_id": "python-5-1046", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络参数保存": { "keywords": [], "children": [], - "node_id": "python-5-1047" + "node_id": "python-5-1047", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络性能评价": { "keywords": [], "children": [], - "node_id": "python-5-1048" + "node_id": "python-5-1048", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1320" + "node_id": "python-4-1320", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7377,95 +9547,123 @@ "Keras基础语法": { "keywords": [], "children": [], - "node_id": "python-5-1049" + "node_id": "python-5-1049", + "keywords_must": [], + "keywords_forbid": [] } }, { "兼容Backend": { "keywords": [], "children": [], - "node_id": "python-5-1050" + "node_id": "python-5-1050", + "keywords_must": [], + "keywords_forbid": [] } }, { "函数模型和序列模型": { "keywords": [], "children": [], - "node_id": "python-5-1051" + "node_id": "python-5-1051", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义Layer": { "keywords": [], "children": [], - "node_id": "python-5-1052" + "node_id": "python-5-1052", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN": { "keywords": [], "children": [], - "node_id": "python-5-1053" + "node_id": "python-5-1053", + "keywords_must": [], + "keywords_forbid": [] } }, { "RNN(GRU/LSTM)": { "keywords": [], "children": [], - "node_id": "python-5-1054" + "node_id": "python-5-1054", + "keywords_must": [], + "keywords_forbid": [] } }, { "Autoencoder": { "keywords": [], "children": [], - "node_id": "python-5-1055" + "node_id": "python-5-1055", + "keywords_must": [], + "keywords_forbid": [] } }, { "GNN": { "keywords": [], "children": [], - "node_id": "python-5-1056" + "node_id": "python-5-1056", + "keywords_must": [], + "keywords_forbid": [] } }, { "迁移学习": { "keywords": [], "children": [], - "node_id": "python-5-1057" + "node_id": "python-5-1057", + "keywords_must": [], + "keywords_forbid": [] } }, { "BiLSTM-Attention": { "keywords": [], "children": [], - "node_id": "python-5-1058" + "node_id": "python-5-1058", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成对抗网络GAN": { "keywords": [], "children": [], - "node_id": "python-5-1059" + "node_id": "python-5-1059", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络参数保存": { "keywords": [], "children": [], - "node_id": "python-5-1060" + "node_id": "python-5-1060", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络性能评价": { "keywords": [], "children": [], - "node_id": "python-5-1061" + "node_id": "python-5-1061", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1321" + "node_id": "python-4-1321", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7476,95 +9674,123 @@ "PyTorch基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1062" + "node_id": "python-5-1062", + "keywords_must": [], + "keywords_forbid": [] } }, { "Tensor": { "keywords": [], "children": [], - "node_id": "python-5-1063" + "node_id": "python-5-1063", + "keywords_must": [], + "keywords_forbid": [] } }, { "Variable": { "keywords": [], "children": [], - "node_id": "python-5-1064" + "node_id": "python-5-1064", + "keywords_must": [], + "keywords_forbid": [] } }, { "定义Layer": { "keywords": [], "children": [], - "node_id": "python-5-1065" + "node_id": "python-5-1065", + "keywords_must": [], + "keywords_forbid": [] } }, { "可视化": { "keywords": [], "children": [], - "node_id": "python-5-1066" + "node_id": "python-5-1066", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN(TextCNN)": { "keywords": [], "children": [], - "node_id": "python-5-1067" + "node_id": "python-5-1067", + "keywords_must": [], + "keywords_forbid": [] } }, { "RNN(GRU/LSTM)": { "keywords": [], "children": [], - "node_id": "python-5-1068" + "node_id": "python-5-1068", + "keywords_must": [], + "keywords_forbid": [] } }, { "Autoencoder": { "keywords": [], "children": [], - "node_id": "python-5-1069" + "node_id": "python-5-1069", + "keywords_must": [], + "keywords_forbid": [] } }, { "GNN/GCN": { "keywords": [], "children": [], - "node_id": "python-5-1070" + "node_id": "python-5-1070", + "keywords_must": [], + "keywords_forbid": [] } }, { "迁移学习": { "keywords": [], "children": [], - "node_id": "python-5-1071" + "node_id": "python-5-1071", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成对抗网络GAN": { "keywords": [], "children": [], - "node_id": "python-5-1072" + "node_id": "python-5-1072", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络参数保存": { "keywords": [], "children": [], - "node_id": "python-5-1073" + "node_id": "python-5-1073", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络性能评价": { "keywords": [], "children": [], - "node_id": "python-5-1074" + "node_id": "python-5-1074", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1322" + "node_id": "python-4-1322", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7575,49 +9801,65 @@ "强化学习概念": { "keywords": [], "children": [], - "node_id": "python-5-1075" + "node_id": "python-5-1075", + "keywords_must": [], + "keywords_forbid": [] } }, { "Q-Learning": { "keywords": [], "children": [], - "node_id": "python-5-1076" + "node_id": "python-5-1076", + "keywords_must": [], + "keywords_forbid": [] } }, { "Sarsa": { "keywords": [], "children": [], - "node_id": "python-5-1077" + "node_id": "python-5-1077", + "keywords_must": [], + "keywords_forbid": [] } }, { "DQN(Deep Q Network)": { "keywords": [], "children": [], - "node_id": "python-5-1078" + "node_id": "python-5-1078", + "keywords_must": [], + "keywords_forbid": [] } }, { "Policy Gradients": { "keywords": [], "children": [], - "node_id": "python-5-1079" + "node_id": "python-5-1079", + "keywords_must": [], + "keywords_forbid": [] } }, { "Actor Critic": { "keywords": [], "children": [], - "node_id": "python-5-1080" + "node_id": "python-5-1080", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1323" + "node_id": "python-4-1323", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7633,32 +9875,42 @@ "数字图像处理": { "keywords": [], "children": [], - "node_id": "python-5-1081" + "node_id": "python-5-1081", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像三要素": { "keywords": [], "children": [], - "node_id": "python-5-1082" + "node_id": "python-5-1082", + "keywords_must": [], + "keywords_forbid": [] } }, { "像素及图像类型": { "keywords": [], "children": [], - "node_id": "python-5-1083" + "node_id": "python-5-1083", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像信号数字转换": { "keywords": [], "children": [], - "node_id": "python-5-1084" + "node_id": "python-5-1084", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1324" + "node_id": "python-4-1324", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7669,25 +9921,33 @@ "安装配置": { "keywords": [], "children": [], - "node_id": "python-5-1085" + "node_id": "python-5-1085", + "keywords_must": [], + "keywords_forbid": [] } }, { "OpenCV基础语法": { "keywords": [], "children": [], - "node_id": "python-5-1086" + "node_id": "python-5-1086", + "keywords_must": [], + "keywords_forbid": [] } }, { "几何图形绘制": { "keywords": [], "children": [], - "node_id": "python-5-1087" + "node_id": "python-5-1087", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1325" + "node_id": "python-4-1325", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7698,32 +9958,42 @@ "读取显示图像": { "keywords": [], "children": [], - "node_id": "python-5-1088" + "node_id": "python-5-1088", + "keywords_must": [], + "keywords_forbid": [] } }, { "读取修改像素": { "keywords": [], "children": [], - "node_id": "python-5-1089" + "node_id": "python-5-1089", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建复制保存图像": { "keywords": [], "children": [], - "node_id": "python-5-1090" + "node_id": "python-5-1090", + "keywords_must": [], + "keywords_forbid": [] } }, { "获取图像属性及通道": { "keywords": [], "children": [], - "node_id": "python-5-1091" + "node_id": "python-5-1091", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1326" + "node_id": "python-4-1326", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7734,46 +10004,60 @@ "图像加法运算": { "keywords": [], "children": [], - "node_id": "python-5-1092" + "node_id": "python-5-1092", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像减法运算": { "keywords": [], "children": [], - "node_id": "python-5-1093" + "node_id": "python-5-1093", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像与运算": { "keywords": [], "children": [], - "node_id": "python-5-1094" + "node_id": "python-5-1094", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像或运算": { "keywords": [], "children": [], - "node_id": "python-5-1095" + "node_id": "python-5-1095", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像异或运算": { "keywords": [], "children": [], - "node_id": "python-5-1096" + "node_id": "python-5-1096", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像非运算": { "keywords": [], "children": [], - "node_id": "python-5-1097" + "node_id": "python-5-1097", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1327" + "node_id": "python-4-1327", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7784,46 +10068,60 @@ "平移变换": { "keywords": [], "children": [], - "node_id": "python-5-1098" + "node_id": "python-5-1098", + "keywords_must": [], + "keywords_forbid": [] } }, { "缩放变换": { "keywords": [], "children": [], - "node_id": "python-5-1099" + "node_id": "python-5-1099", + "keywords_must": [], + "keywords_forbid": [] } }, { "旋转变换": { "keywords": [], "children": [], - "node_id": "python-5-1100" + "node_id": "python-5-1100", + "keywords_must": [], + "keywords_forbid": [] } }, { "镜像变换": { "keywords": [], "children": [], - "node_id": "python-5-1101" + "node_id": "python-5-1101", + "keywords_must": [], + "keywords_forbid": [] } }, { "仿射变换": { "keywords": [], "children": [], - "node_id": "python-5-1102" + "node_id": "python-5-1102", + "keywords_must": [], + "keywords_forbid": [] } }, { "透视变换": { "keywords": [], "children": [], - "node_id": "python-5-1103" + "node_id": "python-5-1103", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1328" + "node_id": "python-4-1328", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7834,32 +10132,42 @@ "图像量化处理": { "keywords": [], "children": [], - "node_id": "python-5-1104" + "node_id": "python-5-1104", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像采样处理": { "keywords": [], "children": [], - "node_id": "python-5-1105" + "node_id": "python-5-1105", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像金字塔": { "keywords": [], "children": [], - "node_id": "python-5-1106" + "node_id": "python-5-1106", + "keywords_must": [], + "keywords_forbid": [] } }, { "局部马赛克处理": { "keywords": [], "children": [], - "node_id": "python-5-1107" + "node_id": "python-5-1107", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1329" + "node_id": "python-4-1329", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7870,39 +10178,51 @@ "直方图概述": { "keywords": [], "children": [], - "node_id": "python-5-1108" + "node_id": "python-5-1108", + "keywords_must": [], + "keywords_forbid": [] } }, { "直方图绘制": { "keywords": [], "children": [], - "node_id": "python-5-1109" + "node_id": "python-5-1109", + "keywords_must": [], + "keywords_forbid": [] } }, { "掩膜直方图": { "keywords": [], "children": [], - "node_id": "python-5-1110" + "node_id": "python-5-1110", + "keywords_must": [], + "keywords_forbid": [] } }, { "H-S直方图": { "keywords": [], "children": [], - "node_id": "python-5-1111" + "node_id": "python-5-1111", + "keywords_must": [], + "keywords_forbid": [] } }, { "直方图对比": { "keywords": [], "children": [], - "node_id": "python-5-1112" + "node_id": "python-5-1112", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1330" + "node_id": "python-4-1330", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7913,39 +10233,51 @@ "图像增强": { "keywords": [], "children": [], - "node_id": "python-5-1113" + "node_id": "python-5-1113", + "keywords_must": [], + "keywords_forbid": [] } }, { "直方图均衡化": { "keywords": [], "children": [], - "node_id": "python-5-1114" + "node_id": "python-5-1114", + "keywords_must": [], + "keywords_forbid": [] } }, { "局部直方图均衡化": { "keywords": [], "children": [], - "node_id": "python-5-1115" + "node_id": "python-5-1115", + "keywords_must": [], + "keywords_forbid": [] } }, { "自动色彩均衡化": { "keywords": [], "children": [], - "node_id": "python-5-1116" + "node_id": "python-5-1116", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像去雾": { "keywords": [], "children": [], - "node_id": "python-5-1117" + "node_id": "python-5-1117", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1331" + "node_id": "python-4-1331", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -7956,46 +10288,60 @@ "图像平滑概述": { "keywords": [], "children": [], - "node_id": "python-5-1118" + "node_id": "python-5-1118", + "keywords_must": [], + "keywords_forbid": [] } }, { "均值滤波": { "keywords": [], "children": [], - "node_id": "python-5-1119" + "node_id": "python-5-1119", + "keywords_must": [], + "keywords_forbid": [] } }, { "方框滤波": { "keywords": [], "children": [], - "node_id": "python-5-1120" + "node_id": "python-5-1120", + "keywords_must": [], + "keywords_forbid": [] } }, { "高斯滤波": { "keywords": [], "children": [], - "node_id": "python-5-1121" + "node_id": "python-5-1121", + "keywords_must": [], + "keywords_forbid": [] } }, { "中值滤波": { "keywords": [], "children": [], - "node_id": "python-5-1122" + "node_id": "python-5-1122", + "keywords_must": [], + "keywords_forbid": [] } }, { "双边滤波": { "keywords": [], "children": [], - "node_id": "python-5-1123" + "node_id": "python-5-1123", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1332" + "node_id": "python-4-1332", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8006,60 +10352,78 @@ "一阶微分算法、二阶微分算子": { "keywords": [], "children": [], - "node_id": "python-5-1124" + "node_id": "python-5-1124", + "keywords_must": [], + "keywords_forbid": [] } }, { "Roberts算子": { "keywords": [], "children": [], - "node_id": "python-5-1125" + "node_id": "python-5-1125", + "keywords_must": [], + "keywords_forbid": [] } }, { "Prewitt算子": { "keywords": [], "children": [], - "node_id": "python-5-1126" + "node_id": "python-5-1126", + "keywords_must": [], + "keywords_forbid": [] } }, { "Sobel算子": { "keywords": [], "children": [], - "node_id": "python-5-1127" + "node_id": "python-5-1127", + "keywords_must": [], + "keywords_forbid": [] } }, { "Laplacian算子": { "keywords": [], "children": [], - "node_id": "python-5-1128" + "node_id": "python-5-1128", + "keywords_must": [], + "keywords_forbid": [] } }, { "Scharr算子": { "keywords": [], "children": [], - "node_id": "python-5-1129" + "node_id": "python-5-1129", + "keywords_must": [], + "keywords_forbid": [] } }, { "Canny算子": { "keywords": [], "children": [], - "node_id": "python-5-1130" + "node_id": "python-5-1130", + "keywords_must": [], + "keywords_forbid": [] } }, { "LOG算子": { "keywords": [], "children": [], - "node_id": "python-5-1131" + "node_id": "python-5-1131", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1333" + "node_id": "python-4-1333", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8070,53 +10434,69 @@ "图像腐蚀": { "keywords": [], "children": [], - "node_id": "python-5-1132" + "node_id": "python-5-1132", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像膨胀": { "keywords": [], "children": [], - "node_id": "python-5-1133" + "node_id": "python-5-1133", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像开运算": { "keywords": [], "children": [], - "node_id": "python-5-1134" + "node_id": "python-5-1134", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像闭运算": { "keywords": [], "children": [], - "node_id": "python-5-1135" + "node_id": "python-5-1135", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像梯度运算": { "keywords": [], "children": [], - "node_id": "python-5-1136" + "node_id": "python-5-1136", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像顶帽运算": { "keywords": [], "children": [], - "node_id": "python-5-1137" + "node_id": "python-5-1137", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像底帽运算": { "keywords": [], "children": [], - "node_id": "python-5-1138" + "node_id": "python-5-1138", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1334" + "node_id": "python-4-1334", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8127,60 +10507,78 @@ "基于阈值的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1139" + "node_id": "python-5-1139", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于边缘检测的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1140" + "node_id": "python-5-1140", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于纹理背景的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1141" + "node_id": "python-5-1141", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于K-Means聚类的区域分割": { "keywords": [], "children": [], - "node_id": "python-5-1142" + "node_id": "python-5-1142", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于均值漂移算法的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1143" + "node_id": "python-5-1143", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于分水岭算法的图像分割": { "keywords": [], "children": [], - "node_id": "python-5-1144" + "node_id": "python-5-1144", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像漫水填充分割": { "keywords": [], "children": [], - "node_id": "python-5-1145" + "node_id": "python-5-1145", + "keywords_must": [], + "keywords_forbid": [] } }, { "文字区域分割及定位": { "keywords": [], "children": [], - "node_id": "python-5-1146" + "node_id": "python-5-1146", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1335" + "node_id": "python-4-1335", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8191,32 +10589,42 @@ "傅里叶变换": { "keywords": [], "children": [], - "node_id": "python-5-1147" + "node_id": "python-5-1147", + "keywords_must": [], + "keywords_forbid": [] } }, { "傅里叶逆变换": { "keywords": [], "children": [], - "node_id": "python-5-1148" + "node_id": "python-5-1148", + "keywords_must": [], + "keywords_forbid": [] } }, { "高通滤波器": { "keywords": [], "children": [], - "node_id": "python-5-1149" + "node_id": "python-5-1149", + "keywords_must": [], + "keywords_forbid": [] } }, { "低通滤波器": { "keywords": [], "children": [], - "node_id": "python-5-1150" + "node_id": "python-5-1150", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1336" + "node_id": "python-4-1336", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8227,25 +10635,33 @@ "霍夫变换": { "keywords": [], "children": [], - "node_id": "python-5-1151" + "node_id": "python-5-1151", + "keywords_must": [], + "keywords_forbid": [] } }, { "霍夫线变换": { "keywords": [], "children": [], - "node_id": "python-5-1152" + "node_id": "python-5-1152", + "keywords_must": [], + "keywords_forbid": [] } }, { "霍夫圆变换": { "keywords": [], "children": [], - "node_id": "python-5-1153" + "node_id": "python-5-1153", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1337" + "node_id": "python-4-1337", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8256,60 +10672,78 @@ "图像毛玻璃特效": { "keywords": [], "children": [], - "node_id": "python-5-1154" + "node_id": "python-5-1154", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像浮雕特效": { "keywords": [], "children": [], - "node_id": "python-5-1155" + "node_id": "python-5-1155", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像素描特效": { "keywords": [], "children": [], - "node_id": "python-5-1156" + "node_id": "python-5-1156", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像怀旧特效": { "keywords": [], "children": [], - "node_id": "python-5-1157" + "node_id": "python-5-1157", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像流年特效": { "keywords": [], "children": [], - "node_id": "python-5-1158" + "node_id": "python-5-1158", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像滤镜特效": { "keywords": [], "children": [], - "node_id": "python-5-1159" + "node_id": "python-5-1159", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像水波特效": { "keywords": [], "children": [], - "node_id": "python-5-1160" + "node_id": "python-5-1160", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像卡通特效": { "keywords": [], "children": [], - "node_id": "python-5-1161" + "node_id": "python-5-1161", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1338" + "node_id": "python-4-1338", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8320,60 +10754,78 @@ "图像分类概述": { "keywords": [], "children": [], - "node_id": "python-5-1162" + "node_id": "python-5-1162", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于机器学习的图像分类": { "keywords": [], "children": [], - "node_id": "python-5-1163" + "node_id": "python-5-1163", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于深度学习的图像分类": { "keywords": [], "children": [], - "node_id": "python-5-1164" + "node_id": "python-5-1164", + "keywords_must": [], + "keywords_forbid": [] } }, { "LeNet": { "keywords": [], "children": [], - "node_id": "python-5-1165" + "node_id": "python-5-1165", + "keywords_must": [], + "keywords_forbid": [] } }, { "VGG": { "keywords": [], "children": [], - "node_id": "python-5-1166" + "node_id": "python-5-1166", + "keywords_must": [], + "keywords_forbid": [] } }, { "AlexNet": { "keywords": [], "children": [], - "node_id": "python-5-1167" + "node_id": "python-5-1167", + "keywords_must": [], + "keywords_forbid": [] } }, { "ResNet": { "keywords": [], "children": [], - "node_id": "python-5-1168" + "node_id": "python-5-1168", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1339" + "node_id": "python-4-1339", + "keywords_must": [], + "keywords_forbid": [] } }, { "人脸识别": { "keywords": [], "children": [], - "node_id": "python-4-1340" + "node_id": "python-4-1340", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8384,53 +10836,69 @@ "目标检测概述": { "keywords": [], "children": [], - "node_id": "python-5-1169" + "node_id": "python-5-1169", + "keywords_must": [], + "keywords_forbid": [] } }, { "RCNN": { "keywords": [], "children": [], - "node_id": "python-5-1170" + "node_id": "python-5-1170", + "keywords_must": [], + "keywords_forbid": [] } }, { "Fast-RCNN": { "keywords": [], "children": [], - "node_id": "python-5-1171" + "node_id": "python-5-1171", + "keywords_must": [], + "keywords_forbid": [] } }, { "SPPNet": { "keywords": [], "children": [], - "node_id": "python-5-1172" + "node_id": "python-5-1172", + "keywords_must": [], + "keywords_forbid": [] } }, { "Mask-RCNN": { "keywords": [], "children": [], - "node_id": "python-5-1173" + "node_id": "python-5-1173", + "keywords_must": [], + "keywords_forbid": [] } }, { "SSD": { "keywords": [], "children": [], - "node_id": "python-5-1174" + "node_id": "python-5-1174", + "keywords_must": [], + "keywords_forbid": [] } }, { "YOLO系列算法": { "keywords": [], "children": [], - "node_id": "python-5-1175" + "node_id": "python-5-1175", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1341" + "node_id": "python-4-1341", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8441,28 +10909,36 @@ "创建神经网络块": { "keywords": [], "children": [], - "node_id": "python-5-1176" + "node_id": "python-5-1176", + "keywords_must": [], + "keywords_forbid": [] } }, { "TensorFlow介绍": { "keywords": [], "children": [], - "node_id": "python-5-1177" + "node_id": "python-5-1177", + "keywords_must": [], + "keywords_forbid": [] } }, { "MNIST数据集介绍": { "keywords": [], "children": [], - "node_id": "python-5-1178" + "node_id": "python-5-1178", + "keywords_must": [], + "keywords_forbid": [] } }, { "Keras深度学习库概述": { "keywords": [], "children": [], - "node_id": "python-5-1179" + "node_id": "python-5-1179", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8473,50 +10949,66 @@ "训练和测试数据的检索": { "keywords": [], "children": [], - "node_id": "python-6-178" + "node_id": "python-6-178", + "keywords_must": [], + "keywords_forbid": [] } }, { "训练数据的可视化": { "keywords": [], "children": [], - "node_id": "python-6-179" + "node_id": "python-6-179", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建神经网络": { "keywords": [], "children": [], - "node_id": "python-6-180" + "node_id": "python-6-180", + "keywords_must": [], + "keywords_forbid": [] } }, { "训练神经网络": { "keywords": [], "children": [], - "node_id": "python-6-181" + "node_id": "python-6-181", + "keywords_must": [], + "keywords_forbid": [] } }, { "测试": { "keywords": [], "children": [], - "node_id": "python-6-182" + "node_id": "python-6-182", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1180" + "node_id": "python-5-1180", + "keywords_must": [], + "keywords_forbid": [] } }, { "理解反向传播": { "keywords": [], "children": [], - "node_id": "python-5-1181" + "node_id": "python-5-1181", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1342" + "node_id": "python-4-1342", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8527,7 +11019,9 @@ "CNN历史": { "keywords": [], "children": [], - "node_id": "python-5-1182" + "node_id": "python-5-1182", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8538,50 +11032,66 @@ "计算机如何解释图像": { "keywords": [], "children": [], - "node_id": "python-6-183" + "node_id": "python-6-183", + "keywords_must": [], + "keywords_forbid": [] } }, { "编码实现图像可视化": { "keywords": [], "children": [], - "node_id": "python-6-184" + "node_id": "python-6-184", + "keywords_must": [], + "keywords_forbid": [] } }, { "dropout": { "keywords": [], "children": [], - "node_id": "python-6-185" + "node_id": "python-6-185", + "keywords_must": [], + "keywords_forbid": [] } }, { "输入层": { "keywords": [], "children": [], - "node_id": "python-6-186" + "node_id": "python-6-186", + "keywords_must": [], + "keywords_forbid": [] } }, { "卷积层": { "keywords": [], "children": [], - "node_id": "python-6-187" + "node_id": "python-6-187", + "keywords_must": [], + "keywords_forbid": [] } }, { "池化层": { "keywords": [], "children": [], - "node_id": "python-6-188" + "node_id": "python-6-188", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1183" + "node_id": "python-5-1183", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1343" + "node_id": "python-4-1343", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8596,18 +11106,24 @@ "卷积操作": { "keywords": [], "children": [], - "node_id": "python-6-189" + "node_id": "python-6-189", + "keywords_must": [], + "keywords_forbid": [] } }, { "池化、步长和填充操作": { "keywords": [], "children": [], - "node_id": "python-6-190" + "node_id": "python-6-190", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1184" + "node_id": "python-5-1184", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8618,18 +11134,24 @@ "在TensorFlow中应用池化操作": { "keywords": [], "children": [], - "node_id": "python-6-191" + "node_id": "python-6-191", + "keywords_must": [], + "keywords_forbid": [] } }, { "TensorFlow中的卷积操作": { "keywords": [], "children": [], - "node_id": "python-6-192" + "node_id": "python-6-192", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1185" + "node_id": "python-5-1185", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8640,25 +11162,33 @@ "初始化权重和偏置": { "keywords": [], "children": [], - "node_id": "python-6-193" + "node_id": "python-6-193", + "keywords_must": [], + "keywords_forbid": [] } }, { "正则化": { "keywords": [], "children": [], - "node_id": "python-6-194" + "node_id": "python-6-194", + "keywords_must": [], + "keywords_forbid": [] } }, { "激活函数": { "keywords": [], "children": [], - "node_id": "python-6-195" + "node_id": "python-6-195", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1186" + "node_id": "python-5-1186", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8669,78 +11199,102 @@ "隐含层数量": { "keywords": [], "children": [], - "node_id": "python-6-196" + "node_id": "python-6-196", + "keywords_must": [], + "keywords_forbid": [] } }, { "每个隐含层的神经元个数": { "keywords": [], "children": [], - "node_id": "python-6-197" + "node_id": "python-6-197", + "keywords_must": [], + "keywords_forbid": [] } }, { "批标准化": { "keywords": [], "children": [], - "node_id": "python-6-198" + "node_id": "python-6-198", + "keywords_must": [], + "keywords_forbid": [] } }, { "高级正则化及过拟合的避免": { "keywords": [], "children": [], - "node_id": "python-6-199" + "node_id": "python-6-199", + "keywords_must": [], + "keywords_forbid": [] } }, { "运用哪个优化器": { "keywords": [], "children": [], - "node_id": "python-6-200" + "node_id": "python-6-200", + "keywords_must": [], + "keywords_forbid": [] } }, { "内存调优": { "keywords": [], "children": [], - "node_id": "python-6-201" + "node_id": "python-6-201", + "keywords_must": [], + "keywords_forbid": [] } }, { "层的位置调优": { "keywords": [], "children": [], - "node_id": "python-6-202" + "node_id": "python-6-202", + "keywords_must": [], + "keywords_forbid": [] } }, { "综合所有操作创建第二个CNN": { "keywords": [], "children": [], - "node_id": "python-6-203" + "node_id": "python-6-203", + "keywords_must": [], + "keywords_forbid": [] } }, { "数据集描述和预处理": { "keywords": [], "children": [], - "node_id": "python-6-204" + "node_id": "python-6-204", + "keywords_must": [], + "keywords_forbid": [] } }, { "创建CNN模型": { "keywords": [], "children": [], - "node_id": "python-6-205" + "node_id": "python-6-205", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1187" + "node_id": "python-5-1187", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1344" + "node_id": "python-4-1344", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8751,21 +11305,27 @@ "ImageNet介绍": { "keywords": [], "children": [], - "node_id": "python-5-1188" + "node_id": "python-5-1188", + "keywords_must": [], + "keywords_forbid": [] } }, { "AlexNet架构": { "keywords": [], "children": [], - "node_id": "python-5-1189" + "node_id": "python-5-1189", + "keywords_must": [], + "keywords_forbid": [] } }, { "VGGNet架构": { "keywords": [], "children": [], - "node_id": "python-5-1190" + "node_id": "python-5-1190", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8776,29 +11336,39 @@ "架构洞察": { "keywords": [], "children": [], - "node_id": "python-6-206" + "node_id": "python-6-206", + "keywords_must": [], + "keywords_forbid": [] } }, { "inception模块": { "keywords": [], "children": [], - "node_id": "python-6-207" + "node_id": "python-6-207", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1191" + "node_id": "python-5-1191", + "keywords_must": [], + "keywords_forbid": [] } }, { "ResNet架构": { "keywords": [], "children": [], - "node_id": "python-5-1192" + "node_id": "python-5-1192", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1345" + "node_id": "python-4-1345", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8813,50 +11383,66 @@ "目标数据集较小且与原始训练集相似": { "keywords": [], "children": [], - "node_id": "python-6-208" + "node_id": "python-6-208", + "keywords_must": [], + "keywords_forbid": [] } }, { "目标数据集较小且与原始训练集不同": { "keywords": [], "children": [], - "node_id": "python-6-209" + "node_id": "python-6-209", + "keywords_must": [], + "keywords_forbid": [] } }, { "目标数据集很大且与原始训练集相似": { "keywords": [], "children": [], - "node_id": "python-6-210" + "node_id": "python-6-210", + "keywords_must": [], + "keywords_forbid": [] } }, { "目标数据集很大且与原始训练集不同": { "keywords": [], "children": [], - "node_id": "python-6-211" + "node_id": "python-6-211", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1193" + "node_id": "python-5-1193", + "keywords_must": [], + "keywords_forbid": [] } }, { "转移学习示例": { "keywords": [], "children": [], - "node_id": "python-5-1194" + "node_id": "python-5-1194", + "keywords_must": [], + "keywords_forbid": [] } }, { "多任务学习": { "keywords": [], "children": [], - "node_id": "python-5-1195" + "node_id": "python-5-1195", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1346" + "node_id": "python-4-1346", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8867,25 +11453,33 @@ "自编码器介绍": { "keywords": [], "children": [], - "node_id": "python-5-1196" + "node_id": "python-5-1196", + "keywords_must": [], + "keywords_forbid": [] } }, { "卷积自编码器": { "keywords": [], "children": [], - "node_id": "python-5-1197" + "node_id": "python-5-1197", + "keywords_must": [], + "keywords_forbid": [] } }, { "应用": { "keywords": [], "children": [], - "node_id": "python-5-1198" + "node_id": "python-5-1198", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1347" + "node_id": "python-4-1347", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8900,18 +11494,24 @@ "CycleGAN": { "keywords": [], "children": [], - "node_id": "python-6-212" + "node_id": "python-6-212", + "keywords_must": [], + "keywords_forbid": [] } }, { "训练GAN模型": { "keywords": [], "children": [], - "node_id": "python-6-213" + "node_id": "python-6-213", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1199" + "node_id": "python-5-1199", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8922,18 +11522,24 @@ "计算损失": { "keywords": [], "children": [], - "node_id": "python-6-214" + "node_id": "python-6-214", + "keywords_must": [], + "keywords_forbid": [] } }, { "半监督学习和GAN": { "keywords": [], "children": [], - "node_id": "python-6-215" + "node_id": "python-6-215", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1200" + "node_id": "python-5-1200", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8944,22 +11550,30 @@ "基于半监督分类的GAN示例": { "keywords": [], "children": [], - "node_id": "python-6-216" + "node_id": "python-6-216", + "keywords_must": [], + "keywords_forbid": [] } }, { "深度卷积GAN": { "keywords": [], "children": [], - "node_id": "python-6-217" + "node_id": "python-6-217", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1201" + "node_id": "python-5-1201", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1348" + "node_id": "python-4-1348", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8970,7 +11584,9 @@ "图像描述中的注意力机制": { "keywords": [], "children": [], - "node_id": "python-5-1202" + "node_id": "python-5-1202", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -8981,18 +11597,24 @@ "硬注意力": { "keywords": [], "children": [], - "node_id": "python-6-218" + "node_id": "python-6-218", + "keywords_must": [], + "keywords_forbid": [] } }, { "软注意力": { "keywords": [], "children": [], - "node_id": "python-6-219" + "node_id": "python-6-219", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1203" + "node_id": "python-5-1203", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9003,32 +11625,48 @@ "视觉CNN模型次优性能的原因": { "keywords": [], "children": [], - "node_id": "python-6-220" + "node_id": "python-6-220", + "keywords_must": [], + "keywords_forbid": [] } }, { "循环视觉注意力模型": { "keywords": [], "children": [], - "node_id": "python-6-221" + "node_id": "python-6-221", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1204" + "node_id": "python-5-1204", + "keywords_must": [], + "keywords_forbid": [] } }, { "参考文献": { "keywords": [], "children": [], - "node_id": "python-5-1205" + "node_id": "python-5-1205", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1349" + "node_id": "python-4-1349", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "计算机视觉", + "CV", + "computer vision" + ], + "keywords_forbid": [] } }, { @@ -9044,25 +11682,33 @@ "自然语言处理的基本概念": { "keywords": [], "children": [], - "node_id": "python-5-1206" + "node_id": "python-5-1206", + "keywords_must": [], + "keywords_forbid": [] } }, { "自然语言处理的面临困难": { "keywords": [], "children": [], - "node_id": "python-5-1207" + "node_id": "python-5-1207", + "keywords_must": [], + "keywords_forbid": [] } }, { "自然语言处理的研究现状": { "keywords": [], "children": [], - "node_id": "python-5-1208" + "node_id": "python-5-1208", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1350" + "node_id": "python-4-1350", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9073,102 +11719,132 @@ "概率论基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1209" + "node_id": "python-5-1209", + "keywords_must": [], + "keywords_forbid": [] } }, { "最大似然估计": { "keywords": [], "children": [], - "node_id": "python-5-1210" + "node_id": "python-5-1210", + "keywords_must": [], + "keywords_forbid": [] } }, { "隐马尔可夫模型": { "keywords": [], "children": [], - "node_id": "python-5-1211" + "node_id": "python-5-1211", + "keywords_must": [], + "keywords_forbid": [] } }, { "贝叶斯网络": { "keywords": [], "children": [], - "node_id": "python-5-1212" + "node_id": "python-5-1212", + "keywords_must": [], + "keywords_forbid": [] } }, { "条件概率分布": { "keywords": [], "children": [], - "node_id": "python-5-1213" + "node_id": "python-5-1213", + "keywords_must": [], + "keywords_forbid": [] } }, { "信息论基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1214" + "node_id": "python-5-1214", + "keywords_must": [], + "keywords_forbid": [] } }, { "熵": { "keywords": [], "children": [], - "node_id": "python-5-1215" + "node_id": "python-5-1215", + "keywords_must": [], + "keywords_forbid": [] } }, { "困惑度": { "keywords": [], "children": [], - "node_id": "python-5-1216" + "node_id": "python-5-1216", + "keywords_must": [], + "keywords_forbid": [] } }, { "互信息": { "keywords": [], "children": [], - "node_id": "python-5-1217" + "node_id": "python-5-1217", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络基础知识": { "keywords": [], "children": [], - "node_id": "python-5-1218" + "node_id": "python-5-1218", + "keywords_must": [], + "keywords_forbid": [] } }, { "CRF": { "keywords": [], "children": [], - "node_id": "python-5-1219" + "node_id": "python-5-1219", + "keywords_must": [], + "keywords_forbid": [] } }, { "BiLSTM+Attention": { "keywords": [], "children": [], - "node_id": "python-5-1220" + "node_id": "python-5-1220", + "keywords_must": [], + "keywords_forbid": [] } }, { "迁移学习": { "keywords": [], "children": [], - "node_id": "python-5-1221" + "node_id": "python-5-1221", + "keywords_must": [], + "keywords_forbid": [] } }, { "常用语料库和知识库": { "keywords": [], "children": [], - "node_id": "python-5-1222" + "node_id": "python-5-1222", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1351" + "node_id": "python-4-1351", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9179,39 +11855,51 @@ "jieba概述": { "keywords": [], "children": [], - "node_id": "python-5-1223" + "node_id": "python-5-1223", + "keywords_must": [], + "keywords_forbid": [] } }, { "jieba分词": { "keywords": [], "children": [], - "node_id": "python-5-1224" + "node_id": "python-5-1224", + "keywords_must": [], + "keywords_forbid": [] } }, { "jieba添加自定义词典": { "keywords": [], "children": [], - "node_id": "python-5-1225" + "node_id": "python-5-1225", + "keywords_must": [], + "keywords_forbid": [] } }, { "jieba词性标注": { "keywords": [], "children": [], - "node_id": "python-5-1226" + "node_id": "python-5-1226", + "keywords_must": [], + "keywords_forbid": [] } }, { "jieba关键词抽取": { "keywords": [], "children": [], - "node_id": "python-5-1227" + "node_id": "python-5-1227", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1352" + "node_id": "python-4-1352", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9222,60 +11910,78 @@ "nltk概述": { "keywords": [], "children": [], - "node_id": "python-5-1228" + "node_id": "python-5-1228", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk字符串处理": { "keywords": [], "children": [], - "node_id": "python-5-1229" + "node_id": "python-5-1229", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk词性标注": { "keywords": [], "children": [], - "node_id": "python-5-1230" + "node_id": "python-5-1230", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk词干提取": { "keywords": [], "children": [], - "node_id": "python-5-1231" + "node_id": "python-5-1231", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk命名实体识别": { "keywords": [], "children": [], - "node_id": "python-5-1232" + "node_id": "python-5-1232", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk分块处理": { "keywords": [], "children": [], - "node_id": "python-5-1233" + "node_id": "python-5-1233", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk文本分类": { "keywords": [], "children": [], - "node_id": "python-5-1234" + "node_id": "python-5-1234", + "keywords_must": [], + "keywords_forbid": [] } }, { "nltk情感分析": { "keywords": [], "children": [], - "node_id": "python-5-1235" + "node_id": "python-5-1235", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1353" + "node_id": "python-4-1353", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9286,39 +11992,51 @@ "TF-IDF": { "keywords": [], "children": [], - "node_id": "python-5-1236" + "node_id": "python-5-1236", + "keywords_must": [], + "keywords_forbid": [] } }, { "similarities": { "keywords": [], "children": [], - "node_id": "python-5-1237" + "node_id": "python-5-1237", + "keywords_must": [], + "keywords_forbid": [] } }, { "LSA": { "keywords": [], "children": [], - "node_id": "python-5-1238" + "node_id": "python-5-1238", + "keywords_must": [], + "keywords_forbid": [] } }, { "LDA": { "keywords": [], "children": [], - "node_id": "python-5-1239" + "node_id": "python-5-1239", + "keywords_must": [], + "keywords_forbid": [] } }, { "Word2vec": { "keywords": [], "children": [], - "node_id": "python-5-1240" + "node_id": "python-5-1240", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1354" + "node_id": "python-4-1354", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9329,39 +12047,51 @@ "分词(英文分词/中文分词)": { "keywords": [], "children": [], - "node_id": "python-5-1241" + "node_id": "python-5-1241", + "keywords_must": [], + "keywords_forbid": [] } }, { "词干提取": { "keywords": [], "children": [], - "node_id": "python-5-1242" + "node_id": "python-5-1242", + "keywords_must": [], + "keywords_forbid": [] } }, { "词形还原": { "keywords": [], "children": [], - "node_id": "python-5-1243" + "node_id": "python-5-1243", + "keywords_must": [], + "keywords_forbid": [] } }, { "词性标注": { "keywords": [], "children": [], - "node_id": "python-5-1244" + "node_id": "python-5-1244", + "keywords_must": [], + "keywords_forbid": [] } }, { "命名实体识别": { "keywords": [], "children": [], - "node_id": "python-5-1245" + "node_id": "python-5-1245", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1355" + "node_id": "python-4-1355", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9372,18 +12102,24 @@ "短语结构分析": { "keywords": [], "children": [], - "node_id": "python-5-1246" + "node_id": "python-5-1246", + "keywords_must": [], + "keywords_forbid": [] } }, { "依存句法分析": { "keywords": [], "children": [], - "node_id": "python-5-1247" + "node_id": "python-5-1247", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1356" + "node_id": "python-4-1356", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9394,46 +12130,60 @@ "命名实体消歧": { "keywords": [], "children": [], - "node_id": "python-5-1248" + "node_id": "python-5-1248", + "keywords_must": [], + "keywords_forbid": [] } }, { "指代消解": { "keywords": [], "children": [], - "node_id": "python-5-1249" + "node_id": "python-5-1249", + "keywords_must": [], + "keywords_forbid": [] } }, { "语义角色标注": { "keywords": [], "children": [], - "node_id": "python-5-1250" + "node_id": "python-5-1250", + "keywords_must": [], + "keywords_forbid": [] } }, { "语义关系抽取": { "keywords": [], "children": [], - "node_id": "python-5-1251" + "node_id": "python-5-1251", + "keywords_must": [], + "keywords_forbid": [] } }, { "语义依存分析": { "keywords": [], "children": [], - "node_id": "python-5-1252" + "node_id": "python-5-1252", + "keywords_must": [], + "keywords_forbid": [] } }, { "抽象语义表示": { "keywords": [], "children": [], - "node_id": "python-5-1253" + "node_id": "python-5-1253", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1357" + "node_id": "python-4-1357", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9444,46 +12194,60 @@ "Word2Vec": { "keywords": [], "children": [], - "node_id": "python-5-1254" + "node_id": "python-5-1254", + "keywords_must": [], + "keywords_forbid": [] } }, { "GloVe": { "keywords": [], "children": [], - "node_id": "python-5-1255" + "node_id": "python-5-1255", + "keywords_must": [], + "keywords_forbid": [] } }, { "fastText": { "keywords": [], "children": [], - "node_id": "python-5-1256" + "node_id": "python-5-1256", + "keywords_must": [], + "keywords_forbid": [] } }, { "ELMo": { "keywords": [], "children": [], - "node_id": "python-5-1257" + "node_id": "python-5-1257", + "keywords_must": [], + "keywords_forbid": [] } }, { "BERT": { "keywords": [], "children": [], - "node_id": "python-5-1258" + "node_id": "python-5-1258", + "keywords_must": [], + "keywords_forbid": [] } }, { "XLNet": { "keywords": [], "children": [], - "node_id": "python-5-1259" + "node_id": "python-5-1259", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1358" + "node_id": "python-4-1358", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9494,32 +12258,42 @@ "文本相似度计算": { "keywords": [], "children": [], - "node_id": "python-5-1260" + "node_id": "python-5-1260", + "keywords_must": [], + "keywords_forbid": [] } }, { "文本聚类": { "keywords": [], "children": [], - "node_id": "python-5-1261" + "node_id": "python-5-1261", + "keywords_must": [], + "keywords_forbid": [] } }, { "文本分类": { "keywords": [], "children": [], - "node_id": "python-5-1262" + "node_id": "python-5-1262", + "keywords_must": [], + "keywords_forbid": [] } }, { "文本摘要": { "keywords": [], "children": [], - "node_id": "python-5-1263" + "node_id": "python-5-1263", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1359" + "node_id": "python-4-1359", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9530,18 +12304,24 @@ "基于情感词典的情感分析": { "keywords": [], "children": [], - "node_id": "python-5-1264" + "node_id": "python-5-1264", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于深度学习的情感分析": { "keywords": [], "children": [], - "node_id": "python-5-1265" + "node_id": "python-5-1265", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1360" + "node_id": "python-4-1360", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9552,18 +12332,24 @@ "LSA": { "keywords": [], "children": [], - "node_id": "python-5-1266" + "node_id": "python-5-1266", + "keywords_must": [], + "keywords_forbid": [] } }, { "LDA": { "keywords": [], "children": [], - "node_id": "python-5-1267" + "node_id": "python-5-1267", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1361" + "node_id": "python-4-1361", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9574,46 +12360,60 @@ "IBM统计翻译模型": { "keywords": [], "children": [], - "node_id": "python-5-1268" + "node_id": "python-5-1268", + "keywords_must": [], + "keywords_forbid": [] } }, { "短语抽取": { "keywords": [], "children": [], - "node_id": "python-5-1269" + "node_id": "python-5-1269", + "keywords_must": [], + "keywords_forbid": [] } }, { "语言模型": { "keywords": [], "children": [], - "node_id": "python-5-1270" + "node_id": "python-5-1270", + "keywords_must": [], + "keywords_forbid": [] } }, { "GNMT": { "keywords": [], "children": [], - "node_id": "python-5-1271" + "node_id": "python-5-1271", + "keywords_must": [], + "keywords_forbid": [] } }, { "Seq2Seq": { "keywords": [], "children": [], - "node_id": "python-5-1272" + "node_id": "python-5-1272", + "keywords_must": [], + "keywords_forbid": [] } }, { "Transformer": { "keywords": [], "children": [], - "node_id": "python-5-1273" + "node_id": "python-5-1273", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1362" + "node_id": "python-4-1362", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9624,39 +12424,51 @@ "n-gram": { "keywords": [], "children": [], - "node_id": "python-5-1274" + "node_id": "python-5-1274", + "keywords_must": [], + "keywords_forbid": [] } }, { "Pitman-Yor过程模型": { "keywords": [], "children": [], - "node_id": "python-5-1275" + "node_id": "python-5-1275", + "keywords_must": [], + "keywords_forbid": [] } }, { "AWD-LSTM": { "keywords": [], "children": [], - "node_id": "python-5-1276" + "node_id": "python-5-1276", + "keywords_must": [], + "keywords_forbid": [] } }, { "Transformer-XL": { "keywords": [], "children": [], - "node_id": "python-5-1277" + "node_id": "python-5-1277", + "keywords_must": [], + "keywords_forbid": [] } }, { "Gated CNN": { "keywords": [], "children": [], - "node_id": "python-5-1278" + "node_id": "python-5-1278", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1363" + "node_id": "python-4-1363", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9667,32 +12479,42 @@ "基于知识的问答": { "keywords": [], "children": [], - "node_id": "python-5-1279" + "node_id": "python-5-1279", + "keywords_must": [], + "keywords_forbid": [] } }, { "基于检索的问答": { "keywords": [], "children": [], - "node_id": "python-5-1280" + "node_id": "python-5-1280", + "keywords_must": [], + "keywords_forbid": [] } }, { "阅读理解": { "keywords": [], "children": [], - "node_id": "python-5-1281" + "node_id": "python-5-1281", + "keywords_must": [], + "keywords_forbid": [] } }, { "完形填空": { "keywords": [], "children": [], - "node_id": "python-5-1282" + "node_id": "python-5-1282", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1364" + "node_id": "python-4-1364", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9703,46 +12525,60 @@ "对话行为分类": { "keywords": [], "children": [], - "node_id": "python-5-1283" + "node_id": "python-5-1283", + "keywords_must": [], + "keywords_forbid": [] } }, { "对话状态跟踪": { "keywords": [], "children": [], - "node_id": "python-5-1284" + "node_id": "python-5-1284", + "keywords_must": [], + "keywords_forbid": [] } }, { "检索式聊天机器人": { "keywords": [], "children": [], - "node_id": "python-5-1285" + "node_id": "python-5-1285", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成式聊天机器人": { "keywords": [], "children": [], - "node_id": "python-5-1286" + "node_id": "python-5-1286", + "keywords_must": [], + "keywords_forbid": [] } }, { "意图识别": { "keywords": [], "children": [], - "node_id": "python-5-1287" + "node_id": "python-5-1287", + "keywords_must": [], + "keywords_forbid": [] } }, { "槽填充(Slot Filling)": { "keywords": [], "children": [], - "node_id": "python-5-1288" + "node_id": "python-5-1288", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1365" + "node_id": "python-4-1365", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9753,53 +12589,69 @@ "傅里叶变换": { "keywords": [], "children": [], - "node_id": "python-5-1289" + "node_id": "python-5-1289", + "keywords_must": [], + "keywords_forbid": [] } }, { "声学模型": { "keywords": [], "children": [], - "node_id": "python-5-1290" + "node_id": "python-5-1290", + "keywords_must": [], + "keywords_forbid": [] } }, { "隐马尔可夫模型": { "keywords": [], "children": [], - "node_id": "python-5-1291" + "node_id": "python-5-1291", + "keywords_must": [], + "keywords_forbid": [] } }, { "CNN": { "keywords": [], "children": [], - "node_id": "python-5-1292" + "node_id": "python-5-1292", + "keywords_must": [], + "keywords_forbid": [] } }, { "LSTM-HMM": { "keywords": [], "children": [], - "node_id": "python-5-1293" + "node_id": "python-5-1293", + "keywords_must": [], + "keywords_forbid": [] } }, { "神经网络语言模型": { "keywords": [], "children": [], - "node_id": "python-5-1294" + "node_id": "python-5-1294", + "keywords_must": [], + "keywords_forbid": [] } }, { "MFCC": { "keywords": [], "children": [], - "node_id": "python-5-1295" + "node_id": "python-5-1295", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1366" + "node_id": "python-4-1366", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9810,35 +12662,51 @@ "知识图谱构建": { "keywords": [], "children": [], - "node_id": "python-5-1296" + "node_id": "python-5-1296", + "keywords_must": [], + "keywords_forbid": [] } }, { "知识计算": { "keywords": [], "children": [], - "node_id": "python-5-1297" + "node_id": "python-5-1297", + "keywords_must": [], + "keywords_forbid": [] } }, { "知识存储": { "keywords": [], "children": [], - "node_id": "python-5-1298" + "node_id": "python-5-1298", + "keywords_must": [], + "keywords_forbid": [] } }, { "知识服务与应用": { "keywords": [], "children": [], - "node_id": "python-5-1299" + "node_id": "python-5-1299", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1367" + "node_id": "python-4-1367", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [ + "自然语言处理", + "NLP", + "natural language processing" + ], + "keywords_forbid": [] } }, { @@ -9854,18 +12722,24 @@ "相关性分析": { "keywords": [], "children": [], - "node_id": "python-5-1316" + "node_id": "python-5-1316", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1385" + "node_id": "python-4-1385", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用Python进行分类": { "keywords": [], "children": [], - "node_id": "python-4-1386" + "node_id": "python-4-1386", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9876,53 +12750,69 @@ "哪个属性优先": { "keywords": [], "children": [], - "node_id": "python-5-1317" + "node_id": "python-5-1317", + "keywords_must": [], + "keywords_forbid": [] } }, { "随机森林分类器": { "keywords": [], "children": [], - "node_id": "python-5-1318" + "node_id": "python-5-1318", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1387" + "node_id": "python-4-1387", + "keywords_must": [], + "keywords_forbid": [] } }, { "朴素贝叶斯分类器": { "keywords": [], "children": [], - "node_id": "python-4-1388" + "node_id": "python-4-1388", + "keywords_must": [], + "keywords_forbid": [] } }, { "支持向量机": { "keywords": [], "children": [], - "node_id": "python-4-1389" + "node_id": "python-4-1389", + "keywords_must": [], + "keywords_forbid": [] } }, { "最近邻分类器": { "keywords": [], "children": [], - "node_id": "python-4-1390" + "node_id": "python-4-1390", + "keywords_must": [], + "keywords_forbid": [] } }, { "情绪分析": { "keywords": [], "children": [], - "node_id": "python-4-1391" + "node_id": "python-4-1391", + "keywords_must": [], + "keywords_forbid": [] } }, { "图像识别": { "keywords": [], "children": [], - "node_id": "python-4-1392" + "node_id": "python-4-1392", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9933,34 +12823,48 @@ "最小二乘估计": { "keywords": [], "children": [], - "node_id": "python-5-1319" + "node_id": "python-5-1319", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1393" + "node_id": "python-4-1393", + "keywords_must": [], + "keywords_forbid": [] } }, { "分类和回归": { "keywords": [], "children": [], - "node_id": "python-4-1394" + "node_id": "python-4-1394", + "keywords_must": [], + "keywords_forbid": [] } }, { "使模型高估或低估": { "keywords": [], "children": [], - "node_id": "python-4-1395" + "node_id": "python-4-1395", + "keywords_must": [], + "keywords_forbid": [] } }, { "处理分类型数据": { "keywords": [], "children": [], - "node_id": "python-4-1396" + "node_id": "python-4-1396", + "keywords_must": [], + "keywords_forbid": [] } } + ], + "keywords_must": [], + "keywords_forbid": [ + "无监督" ] } }, @@ -9973,14 +12877,18 @@ "K均值聚类": { "keywords": [], "children": [], - "node_id": "python-4-1397" + "node_id": "python-4-1397", + "keywords_must": [], + "keywords_forbid": [] } }, { "选择K—肘部法则": { "keywords": [], "children": [], - "node_id": "python-4-1398" + "node_id": "python-4-1398", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -9991,52 +12899,70 @@ "属性": { "keywords": [], "children": [], - "node_id": "python-5-1320" + "node_id": "python-5-1320", + "keywords_must": [], + "keywords_forbid": [] } }, { "一般及欧氏距离": { "keywords": [], "children": [], - "node_id": "python-5-1321" + "node_id": "python-5-1321", + "keywords_must": [], + "keywords_forbid": [] } }, { "平方欧氏距离": { "keywords": [], "children": [], - "node_id": "python-5-1322" + "node_id": "python-5-1322", + "keywords_must": [], + "keywords_forbid": [] } }, { "字符串之间的编辑距离": { "keywords": [], "children": [], - "node_id": "python-5-1323" + "node_id": "python-5-1323", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1399" + "node_id": "python-4-1399", + "keywords_must": [], + "keywords_forbid": [] } }, { "文档上下文的相似性": { "keywords": [], "children": [], - "node_id": "python-4-1400" + "node_id": "python-4-1400", + "keywords_must": [], + "keywords_forbid": [] } }, { "如何判断聚类结果是否良好": { "keywords": [], "children": [], - "node_id": "python-4-1401" + "node_id": "python-4-1401", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10057,53 +12983,69 @@ "规划时的灵活性": { "keywords": [], "children": [], - "node_id": "python-5-1412" + "node_id": "python-5-1412", + "keywords_must": [], + "keywords_forbid": [] } }, { "可变位置参数": { "keywords": [], "children": [], - "node_id": "python-5-1413" + "node_id": "python-5-1413", + "keywords_must": [], + "keywords_forbid": [] } }, { "可变关键字参数": { "keywords": [], "children": [], - "node_id": "python-5-1414" + "node_id": "python-5-1414", + "keywords_must": [], + "keywords_forbid": [] } }, { "组合不同类型的参数": { "keywords": [], "children": [], - "node_id": "python-5-1415" + "node_id": "python-5-1415", + "keywords_must": [], + "keywords_forbid": [] } }, { "调用具有可变参数的函数": { "keywords": [], "children": [], - "node_id": "python-5-1416" + "node_id": "python-5-1416", + "keywords_must": [], + "keywords_forbid": [] } }, { "传递参数": { "keywords": [], "children": [], - "node_id": "python-5-1417" + "node_id": "python-5-1417", + "keywords_must": [], + "keywords_forbid": [] } }, { "自省": { "keywords": [], "children": [], - "node_id": "python-5-1418" + "node_id": "python-5-1418", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1429" + "node_id": "python-4-1429", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10114,32 +13056,42 @@ "闭包": { "keywords": [], "children": [], - "node_id": "python-5-1419" + "node_id": "python-5-1419", + "keywords_must": [], + "keywords_forbid": [] } }, { "包装器": { "keywords": [], "children": [], - "node_id": "python-5-1420" + "node_id": "python-5-1420", + "keywords_must": [], + "keywords_forbid": [] } }, { "带参数的装饰器": { "keywords": [], "children": [], - "node_id": "python-5-1421" + "node_id": "python-5-1421", + "keywords_must": [], + "keywords_forbid": [] } }, { "带参数或不带参数的装饰器": { "keywords": [], "children": [], - "node_id": "python-5-1422" + "node_id": "python-5-1422", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1430" + "node_id": "python-4-1430", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10150,32 +13102,42 @@ "提取样板": { "keywords": [], "children": [], - "node_id": "python-5-1423" + "node_id": "python-5-1423", + "keywords_must": [], + "keywords_forbid": [] } }, { "用装饰器进行注解": { "keywords": [], "children": [], - "node_id": "python-5-1424" + "node_id": "python-5-1424", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1431" + "node_id": "python-4-1431", + "keywords_must": [], + "keywords_forbid": [] } }, { "生成器": { "keywords": [], "children": [], - "node_id": "python-4-1432" + "node_id": "python-4-1432", + "keywords_must": [], + "keywords_forbid": [] } }, { "lambda": { "keywords": [], "children": [], - "node_id": "python-4-1433" + "node_id": "python-4-1433", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10186,14 +13148,18 @@ "标识对象类型": { "keywords": [], "children": [], - "node_id": "python-5-1425" + "node_id": "python-5-1425", + "keywords_must": [], + "keywords_forbid": [] } }, { "模块和软件包": { "keywords": [], "children": [], - "node_id": "python-5-1426" + "node_id": "python-5-1426", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10204,32 +13170,44 @@ "描述函数的作用": { "keywords": [], "children": [], - "node_id": "python-6-222" + "node_id": "python-6-222", + "keywords_must": [], + "keywords_forbid": [] } }, { "返回值": { "keywords": [], "children": [], - "node_id": "python-6-223" + "node_id": "python-6-223", + "keywords_must": [], + "keywords_forbid": [] } }, { "包含预期的异常": { "keywords": [], "children": [], - "node_id": "python-6-224" + "node_id": "python-6-224", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1427" + "node_id": "python-5-1427", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1434" + "node_id": "python-4-1434", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10245,32 +13223,42 @@ "多重继承": { "keywords": [], "children": [], - "node_id": "python-5-1428" + "node_id": "python-5-1428", + "keywords_must": [], + "keywords_forbid": [] } }, { "方法解析顺序": { "keywords": [], "children": [], - "node_id": "python-5-1429" + "node_id": "python-5-1429", + "keywords_must": [], + "keywords_forbid": [] } }, { "使用super函数将控制权传递给其他类": { "keywords": [], "children": [], - "node_id": "python-5-1430" + "node_id": "python-5-1430", + "keywords_must": [], + "keywords_forbid": [] } }, { "自省": { "keywords": [], "children": [], - "node_id": "python-5-1431" + "node_id": "python-5-1431", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1435" + "node_id": "python-4-1435", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10281,25 +13269,33 @@ "在运行时创建类": { "keywords": [], "children": [], - "node_id": "python-5-1432" + "node_id": "python-5-1432", + "keywords_must": [], + "keywords_forbid": [] } }, { "元类": { "keywords": [], "children": [], - "node_id": "python-5-1433" + "node_id": "python-5-1433", + "keywords_must": [], + "keywords_forbid": [] } }, { "控制命名空间": { "keywords": [], "children": [], - "node_id": "python-5-1434" + "node_id": "python-5-1434", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1436" + "node_id": "python-4-1436", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10310,18 +13306,24 @@ "属性": { "keywords": [], "children": [], - "node_id": "python-5-1435" + "node_id": "python-5-1435", + "keywords_must": [], + "keywords_forbid": [] } }, { "描述器": { "keywords": [], "children": [], - "node_id": "python-5-1436" + "node_id": "python-5-1436", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1437" + "node_id": "python-4-1437", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10332,18 +13334,24 @@ "非绑定方法": { "keywords": [], "children": [], - "node_id": "python-5-1437" + "node_id": "python-5-1437", + "keywords_must": [], + "keywords_forbid": [] } }, { "绑定方法": { "keywords": [], "children": [], - "node_id": "python-5-1438" + "node_id": "python-5-1438", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1438" + "node_id": "python-4-1438", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10354,7 +13362,9 @@ "处理成员变量": { "keywords": [], "children": [], - "node_id": "python-5-1439" + "node_id": "python-5-1439", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10369,18 +13379,24 @@ "借助chr和ord进行简单的转换": { "keywords": [], "children": [], - "node_id": "python-7-34" + "node_id": "python-7-34", + "keywords_must": [], + "keywords_forbid": [] } }, { "借助struct模块进行复杂的转换": { "keywords": [], "children": [], - "node_id": "python-7-35" + "node_id": "python-7-35", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-225" + "node_id": "python-6-225", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10391,25 +13407,33 @@ "Unicode": { "keywords": [], "children": [], - "node_id": "python-7-36" + "node_id": "python-7-36", + "keywords_must": [], + "keywords_forbid": [] } }, { "编码": { "keywords": [], "children": [], - "node_id": "python-7-37" + "node_id": "python-7-37", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-226" + "node_id": "python-6-226", + "keywords_must": [], + "keywords_forbid": [] } }, { "简单的替换": { "keywords": [], "children": [], - "node_id": "python-6-227" + "node_id": "python-6-227", + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10420,50 +13444,68 @@ "在对象中查找值": { "keywords": [], "children": [], - "node_id": "python-7-38" + "node_id": "python-7-38", + "keywords_must": [], + "keywords_forbid": [] } }, { "区分字符串类型": { "keywords": [], "children": [], - "node_id": "python-7-39" + "node_id": "python-7-39", + "keywords_must": [], + "keywords_forbid": [] } }, { "标准格式规范": { "keywords": [], "children": [], - "node_id": "python-7-40" + "node_id": "python-7-40", + "keywords_must": [], + "keywords_forbid": [] } }, { "为文本文档制作目录": { "keywords": [], "children": [], - "node_id": "python-7-41" + "node_id": "python-7-41", + "keywords_must": [], + "keywords_forbid": [] } }, { "自定义格式规范": { "keywords": [], "children": [], - "node_id": "python-7-42" + "node_id": "python-7-42", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-6-228" + "node_id": "python-6-228", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-5-1440" + "node_id": "python-5-1440", + "keywords_must": [], + "keywords_forbid": [] } } ], - "node_id": "python-4-1439" + "node_id": "python-4-1439", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10475,62 +13517,89 @@ "基础概念": { "keywords": [], "children": [], - "node_id": "python-4-763" + "node_id": "python-4-763", + "keywords_must": [], + "keywords_forbid": [] } }, { "加锁和解锁": { "keywords": [], "children": [], - "node_id": "python-4-764" + "node_id": "python-4-764", + "keywords_must": [], + "keywords_forbid": [] } }, { "threading": { "keywords": [], "children": [], - "node_id": "python-4-765" + "node_id": "python-4-765", + "keywords_must": [], + "keywords_forbid": [] } }, { "multiprocessing": { "keywords": [], "children": [], - "node_id": "python-4-766" + "node_id": "python-4-766", + "keywords_must": [], + "keywords_forbid": [] } }, { "queue": { "keywords": [], "children": [], - "node_id": "python-4-767" + "node_id": "python-4-767", + "keywords_must": [], + "keywords_forbid": [] } }, { "gevent": { "keywords": [], "children": [], - "node_id": "python-4-768" + "node_id": "python-4-768", + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { "结构化模式匹配": { "node_id": "python-insert-5", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "pattern matching", + "模式匹配" + ], + "keywords_forbid": [] } }, { "探索 Python code object": { "node_id": "python-insert-6", "keywords": [], - "children": [] + "children": [], + "keywords_must": [ + "codeobject", + "代码对象", + "code object" + ], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } }, { @@ -10542,15 +13611,23 @@ "Python问答": { "node_id": "python-c8031e38af1147bfb288090085621a94", "keywords": [], - "children": [] + "children": [], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } - ] + ], + "keywords_must": [], + "keywords_forbid": [] } } \ No newline at end of file diff --git a/src/tree.py b/src/tree.py index 1b85cbf..99a6936 100644 --- a/src/tree.py +++ b/src/tree.py @@ -2,10 +2,11 @@ import json import logging import os import re +import subprocess import sys import uuid import re -import git + id_set = set() logger = logging.getLogger(__name__) @@ -14,11 +15,19 @@ handler = logging.StreamHandler(sys.stdout) formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') handler.setFormatter(formatter) logger.addHandler(handler) -repo = git.Repo(".") -def user_name(): - return repo.config_reader().get_value("user", "name") +def user_name(md_file, author_dict): + ret = subprocess.Popen([ + "git", "log", md_file + ], stdout=subprocess.PIPE) + lines = list(map(lambda l: l.decode(), ret.stdout.readlines())) + author_lines = [] + for line in lines: + if line.startswith('Author'): + author_lines.append(line.split(' ')[1]) + author_nick_name = author_lines[-1] + return author_dict.get(author_nick_name, "") def load_json(p): @@ -77,7 +86,18 @@ def check_export(base, cfg): class TreeWalker: - def __init__(self, root, tree_name, title=None, log=None): + def __init__( + self, root, + tree_name, + title=None, + log=None, + authors=None, + enable_notebook=None, + ignore_keywords=False + ): + self.ignore_keywords = ignore_keywords + self.authors = authors if authors else {} + self.enable_notebook = enable_notebook self.name = tree_name self.root = root self.title = tree_name if title is None else title @@ -89,7 +109,9 @@ class TreeWalker: root_node = { "node_id": root["node_id"], "keywords": root["keywords"], - "children": [] + "children": [], + "keywords_must": root["keywords_must"], + "keywords_forbid": root["keywords_forbid"] } self.tree[root["tree_name"]] = root_node self.load_levels(root_node) @@ -144,6 +166,8 @@ class TreeWalker: "node_id": config["node_id"], "keywords": config["keywords"], "children": [], + "keywords_must": config["keywords_must"], + "keywords_forbid": config["keywords_forbid"] } } @@ -195,6 +219,8 @@ class TreeWalker: "tree_name": self.name, "keywords": [], "node_id": self.gen_node_id(), + "keywords_must": [], + "keywords_forbid": [] } dump_json(config_path, config, exist_ok=True, override=True) else: @@ -224,7 +250,9 @@ class TreeWalker: if not os.path.exists(config_path): config = { "node_id": self.gen_node_id(), - "keywords": [] + "keywords": [], + "keywords_must": [], + "keywords_forbid": [] } dump_json(config_path, config, exist_ok=True, override=True) else: @@ -290,6 +318,8 @@ class TreeWalker: "node_id": config["node_id"], "keywords": config["keywords"], "children": [], + "keywords_must": config["keywords_must"], + "keywords_forbid": config["keywords_forbid"] } } return num, result @@ -301,7 +331,9 @@ class TreeWalker: name: { "node_id": config["node_id"], "keywords": config["keywords"], - "children": config.get("children", []) + "children": config.get("children", []), + "keywords_must": config["keywords_must"], + "keywords_forbid": config["keywords_forbid"] } } # if "children" in config: @@ -318,7 +350,8 @@ class TreeWalker: continue mfile = base + ".json" meta_path = os.path.join(section_path, mfile) - self.ensure_exercises_meta(meta_path, source) + md_file = os.path.join(section_path, e) + self.ensure_exercises_meta(meta_path, source, md_file) export = config.get("export", []) if mfile not in export and self.name != "algorithm": export.append(mfile) @@ -339,7 +372,7 @@ class TreeWalker: else: id_set.add(exercise["exercise_id"]) - def ensure_exercises_meta(self, meta_path, source): + def ensure_exercises_meta(self, meta_path, source, md_file): _, mfile = os.path.split(meta_path) meta = None if os.path.exists(meta_path): @@ -354,27 +387,32 @@ class TreeWalker: if "source" not in meta: meta["source"] = source if "author" not in meta: - meta["author"] = user_name() + meta["author"] = user_name(md_file, self.authors) if "type" not in meta: meta["type"] = "code_options" - if meta is None: - meta = { - "type": "code_options", - "author": user_name(), - "source": source, - "notebook_enable": self.default_notebook(), - "exercise_id": uuid.uuid4().hex - } + + if meta is None: + meta = { + "type": "code_options", + "author": user_name(md_file, self.authors), + "source": source, + "notebook_enable": self.default_notebook(), + "exercise_id": uuid.uuid4().hex + } dump_json(meta_path, meta, True, True) def default_notebook(self): + if self.enable_notebook is not None: + return self.enable_notebook if self.name in ["python", "java", "c"]: return True else: return False def check_section_keywords(self, full_path): + if self.ignore_keywords: + return config = self.ensure_section_config(full_path) - # if not config.get("keywords", []): - # self.logger.error(f"节点 [{full_path}] 的关键字为空,请修改配置文件写入关键字") - # sys.exit(1) + if not config.get("keywords", []): + self.logger.error(f"节点 [{full_path}] 的关键字为空,请修改配置文件写入关键字") + sys.exit(1) -- GitLab