[{"data":1,"prerenderedAt":2248},["ShallowReactive",2],{"post-python-introduction":3,"sidebar-posts":374,"post-related-source":1424},{"id":4,"title":5,"body":6,"category":360,"cover":16,"description":37,"extension":361,"meta":362,"navigation":60,"path":363,"pinned":364,"publishedAt":365,"seo":366,"slug":367,"stem":368,"summary":369,"tags":370,"updatedAt":365,"visible":60,"__hash__":373},"posts\u002Fposts\u002F20260815\u002Fpython-introduction.md","Python介绍",{"type":7,"value":8,"toc":345},"minimark",[9,17,20,23,28,31,68,71,79,82,85,121,131,135,142,145,170,173,190,193,197,201,204,207,210,213,216,219,243,246,249,256,259,262,265,269,275,278,306,309,313,316,319,323,326,329,332,335,338,341],[10,11,12],"p",{},[13,14],"img",{"alt":15,"src":16},"Python 编程语言介绍","\u002Fimages\u002Fcovers\u002Fpython-introduction.png",[10,18,19],{},"如果只用一句话介绍 Python，可以这样说：它是一门语法简洁、应用范围广，而且比较容易上手的编程语言。",[10,21,22],{},"Python 不要求开发者一开始就处理复杂的底层细节。编写代码时，我们通常更关注“程序需要完成什么”，例如整理文件、处理数据或者调用接口，而不必过早考虑内存分配和机器指令。这种设计降低了入门难度，也提高了开发效率。",[24,25,27],"h2",{"id":26},"python-代码是什么样的","Python 代码是什么样的",[10,29,30],{},"下面是一段简单的 Python 代码：",[32,33,38],"pre",{"className":34,"code":35,"language":36,"meta":37,"style":37},"language-python shiki shiki-themes github-dark","name = \"Python\"\nyear = 2026\n\nprint(f\"正在学习 {name}，当前年份是 {year}\")\n","python","",[39,40,41,49,55,62],"code",{"__ignoreMap":37},[42,43,46],"span",{"class":44,"line":45},"line",1,[42,47,48],{},"name = \"Python\"\n",[42,50,52],{"class":44,"line":51},2,[42,53,54],{},"year = 2026\n",[42,56,58],{"class":44,"line":57},3,[42,59,61],{"emptyLinePlaceholder":60},true,"\n",[42,63,65],{"class":44,"line":64},4,[42,66,67],{},"print(f\"正在学习 {name}，当前年份是 {year}\")\n",[10,69,70],{},"运行结果：",[32,72,77],{"className":73,"code":75,"language":76,"meta":37},[74],"language-text","正在学习 Python，当前年份是 2026\n","text",[39,78,75],{"__ignoreMap":37},[10,80,81],{},"从这段代码可以看到，Python 不需要在每条语句结尾添加分号，也不需要提前声明变量类型。它使用换行和缩进组织代码，整体结构比较清楚。",[10,83,84],{},"缩进在 Python 中不仅用于排版，也是语法的一部分。例如：",[32,86,88],{"className":34,"code":87,"language":36,"meta":37,"style":37},"score = 85\n\nif score >= 60:\n    print(\"成绩合格\")\nelse:\n    print(\"需要继续学习\")\n",[39,89,90,95,99,104,109,115],{"__ignoreMap":37},[42,91,92],{"class":44,"line":45},[42,93,94],{},"score = 85\n",[42,96,97],{"class":44,"line":51},[42,98,61],{"emptyLinePlaceholder":60},[42,100,101],{"class":44,"line":57},[42,102,103],{},"if score >= 60:\n",[42,105,106],{"class":44,"line":64},[42,107,108],{},"    print(\"成绩合格\")\n",[42,110,112],{"class":44,"line":111},5,[42,113,114],{},"else:\n",[42,116,118],{"class":44,"line":117},6,[42,119,120],{},"    print(\"需要继续学习\")\n",[10,122,123,126,127,130],{},[39,124,125],{},"if"," 和 ",[39,128,129],{},"else"," 下面的代码必须保持正确缩进，否则程序可能无法运行。",[24,132,134],{"id":133},"python-如何运行代码","Python 如何运行代码",[10,136,137,138,141],{},"Python 通常被称为解释型语言。安装 Python 解释器后，可以直接在终端中运行 ",[39,139,140],{},".py"," 文件，也可以进入交互式环境逐行执行代码。",[10,143,144],{},"交互式环境适合快速验证一个表达式：",[32,146,148],{"className":34,"code":147,"language":36,"meta":37,"style":37},">>> 10 + 20\n30\n>>> \"Python\".lower()\n'python'\n",[39,149,150,155,160,165],{"__ignoreMap":37},[42,151,152],{"class":44,"line":45},[42,153,154],{},">>> 10 + 20\n",[42,156,157],{"class":44,"line":51},[42,158,159],{},"30\n",[42,161,162],{"class":44,"line":57},[42,163,164],{},">>> \"Python\".lower()\n",[42,166,167],{"class":44,"line":64},[42,168,169],{},"'python'\n",[10,171,172],{},"需要保存和重复运行的程序，则可以写入文件：",[32,174,178],{"className":175,"code":176,"language":177,"meta":37,"style":37},"language-bash shiki shiki-themes github-dark","python3 hello.py\n","bash",[39,179,180],{"__ignoreMap":37},[42,181,182,186],{"class":44,"line":45},[42,183,185],{"class":184},"svObZ","python3",[42,187,189],{"class":188},"sU2Wk"," hello.py\n",[10,191,192],{},"以常见的 CPython 解释器为例，源代码在运行过程中会先转换为字节码，再由 Python 虚拟机执行。这个过程通常由解释器自动完成，开发者不需要手动编译。",[24,194,196],{"id":195},"python-的特点","Python 的特点",[198,199,200],"h3",{"id":200},"语法相对简洁",[10,202,203],{},"Python 使用较少的代码就能完成许多常见任务。它的关键字和代码结构比较直观，阅读一段规范编写的 Python 程序时，通常能够较快判断程序正在做什么。",[198,205,206],{"id":206},"支持多种编程方式",[10,208,209],{},"Python 支持面向过程、面向对象和函数式编程。小型脚本可以直接按照执行顺序编写，项目规模扩大后，也可以使用函数、类和模块拆分代码。",[198,211,212],{"id":212},"标准库比较完整",[10,214,215],{},"Python 自带一批常用模块，可以处理文件、路径、日期时间、JSON 数据、日志、压缩文件和网络通信等任务。",[10,217,218],{},"例如，获取当前时间：",[32,220,222],{"className":34,"code":221,"language":36,"meta":37,"style":37},"from datetime import datetime\n\nnow = datetime.now()\nprint(now)\n",[39,223,224,229,233,238],{"__ignoreMap":37},[42,225,226],{"class":44,"line":45},[42,227,228],{},"from datetime import datetime\n",[42,230,231],{"class":44,"line":51},[42,232,61],{"emptyLinePlaceholder":60},[42,234,235],{"class":44,"line":57},[42,236,237],{},"now = datetime.now()\n",[42,239,240],{"class":44,"line":64},[42,241,242],{},"print(now)\n",[10,244,245],{},"这段代码使用的是标准库，不需要另外安装第三方依赖。",[198,247,248],{"id":248},"第三方工具丰富",[10,250,251,252,255],{},"除了标准库，Python 还拥有数量庞大的第三方软件包。开发者可以通过 ",[39,253,254],{},"pip"," 安装所需工具，用于 Web 开发、数据分析、自动化测试、网络爬虫和人工智能等场景。",[10,257,258],{},"第三方包为开发带来了便利，但也需要管理好版本和项目环境。实际开发时，通常会为每个项目创建独立的虚拟环境，避免依赖互相影响。",[198,260,261],{"id":261},"支持多个操作系统",[10,263,264],{},"Python 可以运行在 macOS、Linux、Windows 等主流操作系统上。大部分不依赖系统特性的代码可以跨平台使用，但涉及文件路径、系统命令和底层组件时，仍然需要根据运行环境进行调整。",[24,266,268],{"id":267},"python-可以做什么","Python 可以做什么",[10,270,271],{},[13,272],{"alt":273,"src":274},"Python 的常见应用方向","\u002Fimages\u002Fposts\u002F20260815\u002Fpython-application-fields.png",[10,276,277],{},"Python 的应用范围比较广，常见方向包括：",[279,280,281,285,288,291,294,297,300,303],"ul",{},[282,283,284],"li",{},"编写自动化脚本，批量处理文件和重复任务；",[282,286,287],{},"开发网站后端和 API 服务；",[282,289,290],{},"进行数据清洗、统计分析和图表展示；",[282,292,293],{},"编写网络爬虫和信息采集工具；",[282,295,296],{},"开发自动化测试程序；",[282,298,299],{},"进行机器学习和人工智能开发；",[282,301,302],{},"编写运维、监控和辅助开发工具；",[282,304,305],{},"开发部分桌面应用和插件。",[10,307,308],{},"Python 是这些开发方向的基础语言，具体项目通常还需要配合相应的框架或第三方库。例如，Web 开发可以使用 Django、Flask 或 FastAPI，数据处理可以使用 NumPy 和 pandas，机器学习领域则经常使用 PyTorch、TensorFlow 或 scikit-learn。",[24,310,312],{"id":311},"python-的发展","Python 的发展",[10,314,315],{},"Python 由 Guido van Rossum 创建，最初的开发工作开始于 20 世纪 80 年代末。",[10,317,318],{},"Python 2.0 于 2000 年发布，Python 3.0 于 2008 年发布。Python 3 对语言进行了较大调整，并不完全兼容 Python 2。Python 2 已经结束官方支持，因此现在学习和开发新项目时，应当直接使用 Python 3。",[24,320,322],{"id":321},"python-也有局限","Python 也有局限",[10,324,325],{},"Python 的优势主要是代码清晰、开发效率较高和工具生态丰富，但它并不适合所有任务。",[10,327,328],{},"在大量计算或对运行速度要求很高的场景中，纯 Python 代码的执行速度可能不如 C、C++ 等编译型语言。移动端原生应用、浏览器前端和部分底层系统开发，也不是 Python 最常见的使用方向。",[10,330,331],{},"实际项目中，经常会根据任务特点组合多种语言。Python 负责业务逻辑、数据处理或工具开发，对性能要求较高的部分则可以交给 C、C++ 或其他技术实现。",[24,333,334],{"id":334},"写在最后",[10,336,337],{},"Python 容易让初学者快速写出能够运行的程序，同时又具备支撑实际项目的能力。它的价值不只是“语法简单”，还在于标准库完善、第三方生态成熟，并且能够覆盖自动化、Web、数据处理和人工智能等多个方向。",[10,339,340],{},"学习 Python 时，可以先掌握变量、数据类型、条件判断、循环和函数，再通过一个具体项目逐步熟悉模块、异常处理和第三方依赖。这样比只记语法更容易形成完整的编程思路。",[342,343,344],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .svObZ, html code.shiki .svObZ{--shiki-default:#B392F0}html pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}",{"title":37,"searchDepth":51,"depth":51,"links":346},[347,348,349,356,357,358,359],{"id":26,"depth":51,"text":27},{"id":133,"depth":51,"text":134},{"id":195,"depth":51,"text":196,"children":350},[351,352,353,354,355],{"id":200,"depth":57,"text":200},{"id":206,"depth":57,"text":206},{"id":212,"depth":57,"text":212},{"id":248,"depth":57,"text":248},{"id":261,"depth":57,"text":261},{"id":267,"depth":51,"text":268},{"id":311,"depth":51,"text":312},{"id":321,"depth":51,"text":322},{"id":334,"depth":51,"text":334},"Python","md",{},"\u002Fposts\u002F20260815\u002Fpython-introduction",false,"2026-08-15",{"title":5,"description":37},"python-introduction","posts\u002F20260815\u002Fpython-introduction","面向刚接触编程的读者，介绍 Python 的代码特点、运行方式、常见应用和适用边界，帮助读者建立对这门语言的整体认识。",[360,371,372],"编程入门","基础知识","sjjvBSs4Qg-yZ-1qzJPL1IJuWOpkr4Ge-UgGW3ogvXE",[375,1184],{"id":376,"title":377,"body":378,"category":360,"cover":1172,"description":37,"extension":361,"meta":1173,"navigation":60,"path":1174,"pinned":364,"publishedAt":1175,"seo":1176,"slug":1177,"stem":1178,"summary":1179,"tags":1180,"updatedAt":1175,"visible":60,"__hash__":1183},"posts\u002Fposts\u002F20260717\u002Fpython-environment-installation.md","Python 环境安装",{"type":7,"value":379,"toc":1148},[380,383,386,389,395,398,401,440,456,460,464,475,480,486,504,510,515,521,525,571,574,580,586,589,620,665,682,696,706,710,721,734,737,743,748,751,768,778,799,803,807,810,821,828,832,847,854,858,861,882,888,892,895,899,902,922,925,929,932,966,969,988,991,1012,1017,1021,1024,1044,1047,1050,1054,1061,1076,1079,1083,1086,1096,1107,1111,1114,1129,1145],[24,381,382],{"id":382},"引言",[10,384,385],{},"这一节面向 Python 初学者，介绍在 Windows、macOS、Linux 三个平台上安装 Python 解释器的方法。",[10,387,388],{},"学习 Python 的第一步，就是先准备好一个能运行代码的环境。在这之前，你写的任何代码都没办法跑起来，所以这一步非常关键。",[10,390,391,392,394],{},"安装完成后，我们会打开终端，输入一条命令验证 Python 是否安装成功，同时确认 ",[39,393,254],{}," 这个包管理工具也能正常使用——后续安装各种库，都要靠它来完成。",[24,396,397],{"id":397},"扫盲",[10,399,400],{},"那么这里有几个概念：",[402,403,404,407],"blockquote",{},[10,405,406],{},"为什么需要安装python解释器？",[402,408,409,420,423,431,434],{},[10,410,411,412,415,416,419],{},"我们写的代码，电脑其实看不懂，电脑只认识",[39,413,414],{},"0","和",[39,417,418],{},"1","组成的机器指令。",[10,421,422],{},"那么python解释器的作用就是充当中间的翻译官，当我们在电脑上运行python代码，python解释器充当翻译官，当我们执行脚本，翻译官就会将python代码翻译成机器的0和1。",[10,424,425,426,430],{},"这样，我们就能用",[427,428,429],"strong",{},"人类能读懂的语言","来写代码，再由 Python 这个翻译官，把它翻译成机器能听懂的指令去执行——我们和计算机之间的\"语言障碍\"，就这么被解决了。",[10,432,433],{},"相当于我们的电脑要打开表格，需要安装excel。",[10,435,436],{},[13,437],{"alt":438,"src":439},"图1","https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717161622-%E5%9B%BE1.png",[402,441,442,445],{},[10,443,444],{},"pip又是什么？",[402,446,447,450],{},[10,448,449],{},"pip相当于插件市场，python除了我们自己写代码，还可以下载别人的代码库，来直接调用别人写好的优秀的方法。比如安装了requests库，未来我们就可以用程序模拟浏览器去访问网页。",[10,451,452],{},[13,453],{"alt":454,"src":455},"图2","https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717172846-%E5%9B%BE2.png",[24,457,459],{"id":458},"windows-安装","Windows 安装",[198,461,463],{"id":462},"_1-下载官方安装程序","1. 下载官方安装程序",[10,465,466,467,474],{},"打开 ",[468,469,473],"a",{"href":470,"rel":471},"https:\u002F\u002Fwww.python.org\u002Fdownloads\u002Fwindows\u002F",[472],"nofollow","Python Windows 下载页","，选择当前稳定版对应的 Windows installer：",[402,476,477],{},[10,478,479],{},"本次以 Python 3 稳定版下载流程为准。Python 官网会持续更新补丁版本，安装时选择下载页当前提供的最新 Python 3 稳定版即可",[10,481,482],{},[13,483],{"alt":484,"src":485},"Python Windows 下载页面","https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717123049-image.png",[279,487,488,495,501],{},[282,489,490,491,494],{},"大多数 Intel 或 AMD 处理器的电脑选择 ",[427,492,493],{},"Windows installer (64-bit)","。",[282,496,497,498,494],{},"搭载 ARM 处理器的 Windows 设备选择 ",[427,499,500],{},"Windows installer (ARM64)",[282,502,503],{},"只有明确使用 32 位 Windows 时才选择 32 位安装程序。",[10,505,506],{},[13,507],{"alt":508,"src":509},"Windows 安装程序类型","https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717120221-image.png",[402,511,512],{},[10,513,514],{},"我的电脑是 64 位，所以下载 Windows installer (64-bit)。",[10,516,517],{},[13,518],{"alt":519,"src":520},"Windows 64 位安装程序下载入口","https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717120550-image.png",[198,522,524],{"id":523},"_2-安装并加入-path","2. 安装并加入 PATH",[402,526,527,532,539,564],{},[402,528,529],{},[10,530,531],{},"PATH 环境变量",[10,533,534,535,538],{},"Windows 有一个特殊的变量叫 ",[427,536,537],{},"PATH","，它里面存了一串文件夹路径，比如：",[32,540,542],{"className":34,"code":541,"language":36,"meta":37,"style":37},"D:\\Python313\\\nD:\\Python313\\Scripts\\\nC:\\Windows\\System32\\\n...\n",[39,543,544,549,554,559],{"__ignoreMap":37},[42,545,546],{"class":44,"line":45},[42,547,548],{},"D:\\Python313\\\n",[42,550,551],{"class":44,"line":51},[42,552,553],{},"D:\\Python313\\Scripts\\\n",[42,555,556],{"class":44,"line":57},[42,557,558],{},"C:\\Windows\\System32\\\n",[42,560,561],{"class":44,"line":64},[42,562,563],{},"...\n",[10,565,566,567,570],{},"我们每次在终端输一个命令，Windows 就拿着这个名字，",[427,568,569],{},"挨个去 PATH 里的文件夹翻","，找到了就执行，找不到就报错。",[10,572,573],{},"双击下载的安装程序。在安装界面中，勾选 底部两个选项，然后选择自定义安装。",[10,575,576,577,579],{},"PATH 是系统查找可执行程序时使用的一组目录。勾选后，Windows 才能在新的终端窗口中直接找到 ",[39,578,36],{}," 命令。不同 Python 安装器的界面文字可能略有差异，但目标都是让 Python 命令进入 PATH。",[10,581,582],{},[13,583],{"alt":584,"src":585},"未命名","https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717154915-%E6%9C%AA%E5%91%BD%E5%90%8D.png",[10,587,588],{},"对安装界面最底部的两个勾选项分别解释 :",[402,590,591,594,599],{},[10,592,593],{},"Add python.exe to PATH",[10,595,596],{},[427,597,598],{},"把 Python 添加到系统环境变量",[402,600,601,607,613],{},[10,602,603,604,606],{},"勾选后，你可以在命令行任意位置直接输入 ",[39,605,36],{}," 就能运行",[10,608,609,610,612],{},"不勾选的话，命令行输入 ",[39,611,36],{}," 会提示**\"找不到命令\"**，非常麻烦",[10,614,615,616,619],{},"必须",[427,617,618],{},"勾选","，这是最重要的一个选项，新手最容易忘记打勾",[402,621,622,625,630],{},[10,623,624],{},"Use admin privileges when installing py.exe",[10,626,627],{},[427,628,629],{},"使用管理员权限安装 py.exe（Python 启动器）",[402,631,632,642,656,659],{},[10,633,634,637,638,641],{},[39,635,636],{},"py.exe"," 是 Windows 专属的 Python 启动器，可以让你在命令行输入 ",[39,639,640],{},"py"," 来启动 Python。",[10,643,644,645,647,648,651,652,655],{},"勾选后，",[39,646,636],{}," 会安装到",[427,649,650],{},"系统级目录","，电脑上",[427,653,654],{},"所有用户账户","都能用",[10,657,658],{},"不勾选，只有当前用户能用",[10,660,661,664],{},[427,662,663],{},"建议勾选","，权限更完整，避免后续出现奇怪的权限问题",[402,666,667,670],{},[10,668,669],{},"操作建议",[402,671,672,679],{},[10,673,674,675,678],{},"两个都勾上之后，再点 ",[427,676,677],{},"\"Customize installation\""," 去修改安装路径到 D 盘，不要直接点 \"Install Now\"，否则会装到 C 盘。",[10,680,681],{},"系统文件归 C 盘，自己装的软件和项目归 D 盘，分类清晰，以后管理方便。",[402,683,684,690],{},[10,685,686,687],{},"Python 安装的",[427,688,689],{},"可选功能页",[10,691,692],{},[13,693],{"alt":694,"src":695},"image","https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717161424-image.png",[402,697,698,701],{},[10,699,700],{},"高级选项页",[10,702,703],{},[13,704],{"alt":694,"src":705},"https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717161340-image.png",[198,707,709],{"id":708},"_3-检查-windows-环境","3. 检查 Windows 环境",[10,711,712,713,716,717,720],{},"按 ",[39,714,715],{},"Win + R","，输入 ",[39,718,719],{},"cmd"," 并回车，然后执行：",[32,722,724],{"className":175,"code":723,"language":177,"meta":37,"style":37},"python --version\n",[39,725,726],{"__ignoreMap":37},[42,727,728,730],{"class":44,"line":45},[42,729,36],{"class":184},[42,731,733],{"class":732},"sDLfK"," --version\n",[10,735,736],{},"正常情况下会看到类似下面的输出，具体补丁版本以实际安装结果为准：",[32,738,741],{"className":739,"code":740,"language":76,"meta":37},[74],"Python 3.x.x\n",[39,742,740],{"__ignoreMap":37},[10,744,745],{},[13,746],{"alt":694,"src":747},"https:\u002F\u002Fzhengzaihun-utools-test1.tos-cn-beijing.volces.com\u002F20260717\u002F20260717155647-image.png",[10,749,750],{},"继续检查 pip：",[32,752,754],{"className":175,"code":753,"language":177,"meta":37,"style":37},"python -m pip --version\n",[39,755,756],{"__ignoreMap":37},[42,757,758,760,763,766],{"class":44,"line":45},[42,759,36],{"class":184},[42,761,762],{"class":732}," -m",[42,764,765],{"class":188}," pip",[42,767,733],{"class":732},[10,769,770,771,773,774,777],{},"如果 ",[39,772,36],{}," 无法识别，但 ",[39,775,776],{},"py --version"," 可以输出版本号，后续也可以使用 Windows Python Launcher：",[32,779,781],{"className":175,"code":780,"language":177,"meta":37,"style":37},"py --version\npy -m pip --version\n",[39,782,783,789],{"__ignoreMap":37},[42,784,785,787],{"class":44,"line":45},[42,786,640],{"class":184},[42,788,733],{"class":732},[42,790,791,793,795,797],{"class":44,"line":51},[42,792,640],{"class":184},[42,794,762],{"class":732},[42,796,765],{"class":188},[42,798,733],{"class":732},[24,800,802],{"id":801},"macos-安装","macOS 安装",[198,804,806],{"id":805},"_1-先检查现有环境","1. 先检查现有环境",[10,808,809],{},"打开“终端”应用，执行：",[32,811,813],{"className":175,"code":812,"language":177,"meta":37,"style":37},"python3 --version\n",[39,814,815],{"__ignoreMap":37},[42,816,817,819],{"class":44,"line":45},[42,818,185],{"class":184},[42,820,733],{"class":732},[10,822,823,824,827],{},"如果已经输出符合学习要求的 Python 3 版本，可以继续执行 ",[39,825,826],{},"python3 -m pip --version","。两条命令都正常时，无需重复安装。",[198,829,831],{"id":830},"_2-下载-macos-官方安装包","2. 下载 macOS 官方安装包",[10,833,466,834,839,840,494,843,846],{},[468,835,838],{"href":836,"rel":837},"https:\u002F\u002Fwww.python.org\u002Fdownloads\u002Fmacos\u002F",[472],"Python macOS 下载页","，下载当前稳定版的 ",[427,841,842],{},"macOS 64-bit universal2 installer",[39,844,845],{},"universal2"," 安装包同时支持 Apple 芯片和 Intel 芯片 Mac。",[10,848,849,850,853],{},"下载完成后打开 ",[39,851,852],{},".pkg"," 文件，按照安装器提示完成安装。使用官网安装包时，系统可能要求输入当前 macOS 用户的登录密码，用于授权写入系统级安装目录。",[198,855,857],{"id":856},"_3-检查-macos-环境","3. 检查 macOS 环境",[10,859,860],{},"安装完成后重新打开终端，执行：",[32,862,864],{"className":175,"code":863,"language":177,"meta":37,"style":37},"python3 --version\npython3 -m pip --version\n",[39,865,866,872],{"__ignoreMap":37},[42,867,868,870],{"class":44,"line":45},[42,869,185],{"class":184},[42,871,733],{"class":732},[42,873,874,876,878,880],{"class":44,"line":51},[42,875,185],{"class":184},[42,877,762],{"class":732},[42,879,765],{"class":188},[42,881,733],{"class":732},[10,883,884,885,887],{},"正常情况下，两条命令都会显示版本信息。macOS 中建议始终使用 ",[39,886,185],{},"，不要为了缩短命令而修改或覆盖系统自带工具。",[24,889,891],{"id":890},"linux-安装","Linux 安装",[10,893,894],{},"Linux 发行版通常通过系统包管理器维护 Python。仓库中的版本可能落后于 Python 官网的最新补丁版，但会与当前系统的软件依赖和安全更新保持一致。对于本系列的入门代码，优先使用发行版仓库版本，安装和维护都更稳妥。",[198,896,898],{"id":897},"_1-检查是否已经安装","1. 检查是否已经安装",[10,900,901],{},"打开终端，执行：",[32,903,904],{"className":175,"code":863,"language":177,"meta":37,"style":37},[39,905,906,912],{"__ignoreMap":37},[42,907,908,910],{"class":44,"line":45},[42,909,185],{"class":184},[42,911,733],{"class":732},[42,913,914,916,918,920],{"class":44,"line":51},[42,915,185],{"class":184},[42,917,762],{"class":732},[42,919,765],{"class":188},[42,921,733],{"class":732},[10,923,924],{},"不少 Linux 系统已经包含 Python 3。如果第一条命令有输出、第二条命令提示没有 pip，只安装 pip 和虚拟环境支持即可。",[198,926,928],{"id":927},"_2-使用发行版包管理器安装","2. 使用发行版包管理器安装",[10,930,931],{},"Ubuntu 或 Debian：",[32,933,935],{"className":175,"code":934,"language":177,"meta":37,"style":37},"sudo apt update\nsudo apt install python3 python3-pip python3-venv\n",[39,936,937,948],{"__ignoreMap":37},[42,938,939,942,945],{"class":44,"line":45},[42,940,941],{"class":184},"sudo",[42,943,944],{"class":188}," apt",[42,946,947],{"class":188}," update\n",[42,949,950,952,954,957,960,963],{"class":44,"line":51},[42,951,941],{"class":184},[42,953,944],{"class":188},[42,955,956],{"class":188}," install",[42,958,959],{"class":188}," python3",[42,961,962],{"class":188}," python3-pip",[42,964,965],{"class":188}," python3-venv\n",[10,967,968],{},"Fedora：",[32,970,972],{"className":175,"code":971,"language":177,"meta":37,"style":37},"sudo dnf install python3 python3-pip\n",[39,973,974],{"__ignoreMap":37},[42,975,976,978,981,983,985],{"class":44,"line":45},[42,977,941],{"class":184},[42,979,980],{"class":188}," dnf",[42,982,956],{"class":188},[42,984,959],{"class":188},[42,986,987],{"class":188}," python3-pip\n",[10,989,990],{},"Arch Linux：",[32,992,994],{"className":175,"code":993,"language":177,"meta":37,"style":37},"sudo pacman -S python python-pip\n",[39,995,996],{"__ignoreMap":37},[42,997,998,1000,1003,1006,1009],{"class":44,"line":45},[42,999,941],{"class":184},[42,1001,1002],{"class":188}," pacman",[42,1004,1005],{"class":732}," -S",[42,1007,1008],{"class":188}," python",[42,1010,1011],{"class":188}," python-pip\n",[10,1013,1014,1016],{},[39,1015,941],{}," 会要求输入当前 Linux 用户的密码。执行前应确认该用户具备管理员权限，不要从来历不明的网页复制带有删除或覆盖操作的命令。",[198,1018,1020],{"id":1019},"_3-检查-linux-环境","3. 检查 Linux 环境",[10,1022,1023],{},"安装结束后执行：",[32,1025,1026],{"className":175,"code":863,"language":177,"meta":37,"style":37},[39,1027,1028,1034],{"__ignoreMap":37},[42,1029,1030,1032],{"class":44,"line":45},[42,1031,185],{"class":184},[42,1033,733],{"class":732},[42,1035,1036,1038,1040,1042],{"class":44,"line":51},[42,1037,185],{"class":184},[42,1039,762],{"class":732},[42,1041,765],{"class":188},[42,1043,733],{"class":732},[10,1045,1046],{},"看到 Python 3 和 pip 的版本信息，说明基础环境已经可用。",[24,1048,1049],{"id":1049},"常见问题",[198,1051,1053],{"id":1052},"windows-提示python-不是内部或外部命令","Windows 提示“python 不是内部或外部命令”",[10,1055,1056,1057,1060],{},"先关闭当前命令提示符并重新打开，再执行 ",[39,1058,1059],{},"python --version","。如果仍然失败，按下面的顺序检查：",[1062,1063,1064,1070,1073],"ol",{},[282,1065,1066,1067,1069],{},"执行 ",[39,1068,776],{},"，确认 Python Launcher 是否可用。",[282,1071,1072],{},"在 Windows 的“已安装的应用”中确认 Python 已经安装。",[282,1074,1075],{},"重新运行官方安装程序，选择修改安装，并启用将 Python 加入 PATH 的选项。",[10,1077,1078],{},"不要仅为解决命令问题而从非官方网站重新下载 Python。",[198,1080,1082],{"id":1081},"macos-或-linux-提示python-command-not-found","macOS 或 Linux 提示“python: command not found”",[10,1084,1085],{},"先尝试：",[32,1087,1088],{"className":175,"code":812,"language":177,"meta":37,"style":37},[39,1089,1090],{"__ignoreMap":37},[42,1091,1092,1094],{"class":44,"line":45},[42,1093,185],{"class":184},[42,1095,733],{"class":732},[10,1097,1098,1099,1101,1102,1104,1105,494],{},"在这两个系统中，只有 ",[39,1100,185],{}," 命令而没有 ",[39,1103,36],{}," 命令通常是正常情况。本系列在 macOS 和 Linux 上统一使用 ",[39,1106,185],{},[198,1108,1110],{"id":1109},"python-有版本输出但-pip-不可用","Python 有版本输出，但 pip 不可用",[10,1112,1113],{},"先使用模块方式检查：",[32,1115,1117],{"className":175,"code":1116,"language":177,"meta":37,"style":37},"python3 -m pip --version\n",[39,1118,1119],{"__ignoreMap":37},[42,1120,1121,1123,1125,1127],{"class":44,"line":45},[42,1122,185],{"class":184},[42,1124,762],{"class":732},[42,1126,765],{"class":188},[42,1128,733],{"class":732},[10,1130,1131,1132,1134,1135,1137,1138,1140,1141,1144],{},"Windows 用户将命令中的 ",[39,1133,185],{}," 换成 ",[39,1136,36],{}," 或 ",[39,1139,640],{},"。Linux 用户如果仍然提示缺少 pip，可以通过当前发行版的包管理器安装 ",[39,1142,1143],{},"python3-pip","；不要直接使用其他系统的安装命令。",[342,1146,1147],{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .svObZ, html code.shiki .svObZ{--shiki-default:#B392F0}html pre.shiki code .sDLfK, html code.shiki .sDLfK{--shiki-default:#79B8FF}html pre.shiki code .sU2Wk, html code.shiki .sU2Wk{--shiki-default:#9ECBFF}",{"title":37,"searchDepth":51,"depth":51,"links":1149},[1150,1151,1152,1157,1162,1167],{"id":382,"depth":51,"text":382},{"id":397,"depth":51,"text":397},{"id":458,"depth":51,"text":459,"children":1153},[1154,1155,1156],{"id":462,"depth":57,"text":463},{"id":523,"depth":57,"text":524},{"id":708,"depth":57,"text":709},{"id":801,"depth":51,"text":802,"children":1158},[1159,1160,1161],{"id":805,"depth":57,"text":806},{"id":830,"depth":57,"text":831},{"id":856,"depth":57,"text":857},{"id":890,"depth":51,"text":891,"children":1163},[1164,1165,1166],{"id":897,"depth":57,"text":898},{"id":927,"depth":57,"text":928},{"id":1019,"depth":57,"text":1020},{"id":1049,"depth":51,"text":1049,"children":1168},[1169,1170,1171],{"id":1052,"depth":57,"text":1053},{"id":1081,"depth":57,"text":1082},{"id":1109,"depth":57,"text":1110},null,{},"\u002Fposts\u002F20260717\u002Fpython-environment-installation","2026-07-17",{"title":377,"description":37},"python-environment-installation","posts\u002F20260717\u002Fpython-environment-installation","面向准备学习 Python 和爬虫的零基础读者，介绍 Windows、macOS 与常见 Linux 发行版的 Python 安装方法，并通过版本和 pip 命令检查环境是否可用。",[360,1181,1182],"环境搭建","爬虫入门","gFnbpd4908BhfR4OwdWwLB7SXKVWKNip9fxO4g8KaIg",{"id":4,"title":5,"body":1185,"category":360,"cover":16,"description":37,"extension":361,"meta":1421,"navigation":60,"path":363,"pinned":364,"publishedAt":365,"seo":1422,"slug":367,"stem":368,"summary":369,"tags":1423,"updatedAt":365,"visible":60,"__hash__":373},{"type":7,"value":1186,"toc":1406},[1187,1191,1193,1195,1197,1199,1219,1221,1226,1228,1230,1258,1264,1266,1270,1272,1292,1294,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1342,1344,1346,1350,1352,1354,1356,1358,1362,1364,1382,1384,1386,1388,1390,1392,1394,1396,1398,1400,1402,1404],[10,1188,1189],{},[13,1190],{"alt":15,"src":16},[10,1192,19],{},[10,1194,22],{},[24,1196,27],{"id":26},[10,1198,30],{},[32,1200,1201],{"className":34,"code":35,"language":36,"meta":37,"style":37},[39,1202,1203,1207,1211,1215],{"__ignoreMap":37},[42,1204,1205],{"class":44,"line":45},[42,1206,48],{},[42,1208,1209],{"class":44,"line":51},[42,1210,54],{},[42,1212,1213],{"class":44,"line":57},[42,1214,61],{"emptyLinePlaceholder":60},[42,1216,1217],{"class":44,"line":64},[42,1218,67],{},[10,1220,70],{},[32,1222,1224],{"className":1223,"code":75,"language":76,"meta":37},[74],[39,1225,75],{"__ignoreMap":37},[10,1227,81],{},[10,1229,84],{},[32,1231,1232],{"className":34,"code":87,"language":36,"meta":37,"style":37},[39,1233,1234,1238,1242,1246,1250,1254],{"__ignoreMap":37},[42,1235,1236],{"class":44,"line":45},[42,1237,94],{},[42,1239,1240],{"class":44,"line":51},[42,1241,61],{"emptyLinePlaceholder":60},[42,1243,1244],{"class":44,"line":57},[42,1245,103],{},[42,1247,1248],{"class":44,"line":64},[42,1249,108],{},[42,1251,1252],{"class":44,"line":111},[42,1253,114],{},[42,1255,1256],{"class":44,"line":117},[42,1257,120],{},[10,1259,1260,126,1262,130],{},[39,1261,125],{},[39,1263,129],{},[24,1265,134],{"id":133},[10,1267,137,1268,141],{},[39,1269,140],{},[10,1271,144],{},[32,1273,1274],{"className":34,"code":147,"language":36,"meta":37,"style":37},[39,1275,1276,1280,1284,1288],{"__ignoreMap":37},[42,1277,1278],{"class":44,"line":45},[42,1279,154],{},[42,1281,1282],{"class":44,"line":51},[42,1283,159],{},[42,1285,1286],{"class":44,"line":57},[42,1287,164],{},[42,1289,1290],{"class":44,"line":64},[42,1291,169],{},[10,1293,172],{},[32,1295,1296],{"className":175,"code":176,"language":177,"meta":37,"style":37},[39,1297,1298],{"__ignoreMap":37},[42,1299,1300,1302],{"class":44,"line":45},[42,1301,185],{"class":184},[42,1303,189],{"class":188},[10,1305,192],{},[24,1307,196],{"id":195},[198,1309,200],{"id":200},[10,1311,203],{},[198,1313,206],{"id":206},[10,1315,209],{},[198,1317,212],{"id":212},[10,1319,215],{},[10,1321,218],{},[32,1323,1324],{"className":34,"code":221,"language":36,"meta":37,"style":37},[39,1325,1326,1330,1334,1338],{"__ignoreMap":37},[42,1327,1328],{"class":44,"line":45},[42,1329,228],{},[42,1331,1332],{"class":44,"line":51},[42,1333,61],{"emptyLinePlaceholder":60},[42,1335,1336],{"class":44,"line":57},[42,1337,237],{},[42,1339,1340],{"class":44,"line":64},[42,1341,242],{},[10,1343,245],{},[198,1345,248],{"id":248},[10,1347,251,1348,255],{},[39,1349,254],{},[10,1351,258],{},[198,1353,261],{"id":261},[10,1355,264],{},[24,1357,268],{"id":267},[10,1359,1360],{},[13,1361],{"alt":273,"src":274},[10,1363,277],{},[279,1365,1366,1368,1370,1372,1374,1376,1378,1380],{},[282,1367,284],{},[282,1369,287],{},[282,1371,290],{},[282,1373,293],{},[282,1375,296],{},[282,1377,299],{},[282,1379,302],{},[282,1381,305],{},[10,1383,308],{},[24,1385,312],{"id":311},[10,1387,315],{},[10,1389,318],{},[24,1391,322],{"id":321},[10,1393,325],{},[10,1395,328],{},[10,1397,331],{},[24,1399,334],{"id":334},[10,1401,337],{},[10,1403,340],{},[342,1405,344],{},{"title":37,"searchDepth":51,"depth":51,"links":1407},[1408,1409,1410,1417,1418,1419,1420],{"id":26,"depth":51,"text":27},{"id":133,"depth":51,"text":134},{"id":195,"depth":51,"text":196,"children":1411},[1412,1413,1414,1415,1416],{"id":200,"depth":57,"text":200},{"id":206,"depth":57,"text":206},{"id":212,"depth":57,"text":212},{"id":248,"depth":57,"text":248},{"id":261,"depth":57,"text":261},{"id":267,"depth":51,"text":268},{"id":311,"depth":51,"text":312},{"id":321,"depth":51,"text":322},{"id":334,"depth":51,"text":334},{},{"title":5,"description":37},[360,371,372],[1425,1665],{"id":4,"title":5,"body":1426,"category":360,"cover":16,"description":37,"extension":361,"meta":1662,"navigation":60,"path":363,"pinned":364,"publishedAt":365,"seo":1663,"slug":367,"stem":368,"summary":369,"tags":1664,"updatedAt":365,"visible":60,"__hash__":373},{"type":7,"value":1427,"toc":1647},[1428,1432,1434,1436,1438,1440,1460,1462,1467,1469,1471,1499,1505,1507,1511,1513,1533,1535,1545,1547,1549,1551,1553,1555,1557,1559,1561,1563,1583,1585,1587,1591,1593,1595,1597,1599,1603,1605,1623,1625,1627,1629,1631,1633,1635,1637,1639,1641,1643,1645],[10,1429,1430],{},[13,1431],{"alt":15,"src":16},[10,1433,19],{},[10,1435,22],{},[24,1437,27],{"id":26},[10,1439,30],{},[32,1441,1442],{"className":34,"code":35,"language":36,"meta":37,"style":37},[39,1443,1444,1448,1452,1456],{"__ignoreMap":37},[42,1445,1446],{"class":44,"line":45},[42,1447,48],{},[42,1449,1450],{"class":44,"line":51},[42,1451,54],{},[42,1453,1454],{"class":44,"line":57},[42,1455,61],{"emptyLinePlaceholder":60},[42,1457,1458],{"class":44,"line":64},[42,1459,67],{},[10,1461,70],{},[32,1463,1465],{"className":1464,"code":75,"language":76,"meta":37},[74],[39,1466,75],{"__ignoreMap":37},[10,1468,81],{},[10,1470,84],{},[32,1472,1473],{"className":34,"code":87,"language":36,"meta":37,"style":37},[39,1474,1475,1479,1483,1487,1491,1495],{"__ignoreMap":37},[42,1476,1477],{"class":44,"line":45},[42,1478,94],{},[42,1480,1481],{"class":44,"line":51},[42,1482,61],{"emptyLinePlaceholder":60},[42,1484,1485],{"class":44,"line":57},[42,1486,103],{},[42,1488,1489],{"class":44,"line":64},[42,1490,108],{},[42,1492,1493],{"class":44,"line":111},[42,1494,114],{},[42,1496,1497],{"class":44,"line":117},[42,1498,120],{},[10,1500,1501,126,1503,130],{},[39,1502,125],{},[39,1504,129],{},[24,1506,134],{"id":133},[10,1508,137,1509,141],{},[39,1510,140],{},[10,1512,144],{},[32,1514,1515],{"className":34,"code":147,"language":36,"meta":37,"style":37},[39,1516,1517,1521,1525,1529],{"__ignoreMap":37},[42,1518,1519],{"class":44,"line":45},[42,1520,154],{},[42,1522,1523],{"class":44,"line":51},[42,1524,159],{},[42,1526,1527],{"class":44,"line":57},[42,1528,164],{},[42,1530,1531],{"class":44,"line":64},[42,1532,169],{},[10,1534,172],{},[32,1536,1537],{"className":175,"code":176,"language":177,"meta":37,"style":37},[39,1538,1539],{"__ignoreMap":37},[42,1540,1541,1543],{"class":44,"line":45},[42,1542,185],{"class":184},[42,1544,189],{"class":188},[10,1546,192],{},[24,1548,196],{"id":195},[198,1550,200],{"id":200},[10,1552,203],{},[198,1554,206],{"id":206},[10,1556,209],{},[198,1558,212],{"id":212},[10,1560,215],{},[10,1562,218],{},[32,1564,1565],{"className":34,"code":221,"language":36,"meta":37,"style":37},[39,1566,1567,1571,1575,1579],{"__ignoreMap":37},[42,1568,1569],{"class":44,"line":45},[42,1570,228],{},[42,1572,1573],{"class":44,"line":51},[42,1574,61],{"emptyLinePlaceholder":60},[42,1576,1577],{"class":44,"line":57},[42,1578,237],{},[42,1580,1581],{"class":44,"line":64},[42,1582,242],{},[10,1584,245],{},[198,1586,248],{"id":248},[10,1588,251,1589,255],{},[39,1590,254],{},[10,1592,258],{},[198,1594,261],{"id":261},[10,1596,264],{},[24,1598,268],{"id":267},[10,1600,1601],{},[13,1602],{"alt":273,"src":274},[10,1604,277],{},[279,1606,1607,1609,1611,1613,1615,1617,1619,1621],{},[282,1608,284],{},[282,1610,287],{},[282,1612,290],{},[282,1614,293],{},[282,1616,296],{},[282,1618,299],{},[282,1620,302],{},[282,1622,305],{},[10,1624,308],{},[24,1626,312],{"id":311},[10,1628,315],{},[10,1630,318],{},[24,1632,322],{"id":321},[10,1634,325],{},[10,1636,328],{},[10,1638,331],{},[24,1640,334],{"id":334},[10,1642,337],{},[10,1644,340],{},[342,1646,344],{},{"title":37,"searchDepth":51,"depth":51,"links":1648},[1649,1650,1651,1658,1659,1660,1661],{"id":26,"depth":51,"text":27},{"id":133,"depth":51,"text":134},{"id":195,"depth":51,"text":196,"children":1652},[1653,1654,1655,1656,1657],{"id":200,"depth":57,"text":200},{"id":206,"depth":57,"text":206},{"id":212,"depth":57,"text":212},{"id":248,"depth":57,"text":248},{"id":261,"depth":57,"text":261},{"id":267,"depth":51,"text":268},{"id":311,"depth":51,"text":312},{"id":321,"depth":51,"text":322},{"id":334,"depth":51,"text":334},{},{"title":5,"description":37},[360,371,372],{"id":376,"title":377,"body":1666,"category":360,"cover":1172,"description":37,"extension":361,"meta":2245,"navigation":60,"path":1174,"pinned":364,"publishedAt":1175,"seo":2246,"slug":1177,"stem":1178,"summary":1179,"tags":2247,"updatedAt":1175,"visible":60,"__hash__":1183},{"type":7,"value":1667,"toc":2221},[1668,1670,1672,1674,1678,1680,1682,1706,1718,1720,1722,1727,1731,1735,1747,1751,1755,1759,1761,1795,1797,1801,1805,1807,1829,1859,1871,1881,1889,1891,1897,1907,1909,1914,1918,1920,1934,1940,1960,1962,1964,1966,1976,1980,1982,1991,1995,1997,1999,2019,2023,2025,2027,2029,2031,2051,2053,2055,2057,2083,2085,2101,2103,2119,2123,2125,2127,2147,2149,2151,2153,2157,2167,2169,2171,2173,2183,2191,2193,2195,2209,2219],[24,1669,382],{"id":382},[10,1671,385],{},[10,1673,388],{},[10,1675,391,1676,394],{},[39,1677,254],{},[24,1679,397],{"id":397},[10,1681,400],{},[402,1683,1684,1686],{},[10,1685,406],{},[402,1687,1688,1694,1696,1700,1702],{},[10,1689,411,1690,415,1692,419],{},[39,1691,414],{},[39,1693,418],{},[10,1695,422],{},[10,1697,425,1698,430],{},[427,1699,429],{},[10,1701,433],{},[10,1703,1704],{},[13,1705],{"alt":438,"src":439},[402,1707,1708,1710],{},[10,1709,444],{},[402,1711,1712,1714],{},[10,1713,449],{},[10,1715,1716],{},[13,1717],{"alt":454,"src":455},[24,1719,459],{"id":458},[198,1721,463],{"id":462},[10,1723,466,1724,474],{},[468,1725,473],{"href":470,"rel":1726},[472],[402,1728,1729],{},[10,1730,479],{},[10,1732,1733],{},[13,1734],{"alt":484,"src":485},[279,1736,1737,1741,1745],{},[282,1738,490,1739,494],{},[427,1740,493],{},[282,1742,497,1743,494],{},[427,1744,500],{},[282,1746,503],{},[10,1748,1749],{},[13,1750],{"alt":508,"src":509},[402,1752,1753],{},[10,1754,514],{},[10,1756,1757],{},[13,1758],{"alt":519,"src":520},[198,1760,524],{"id":523},[402,1762,1763,1767,1771,1791],{},[402,1764,1765],{},[10,1766,531],{},[10,1768,534,1769,538],{},[427,1770,537],{},[32,1772,1773],{"className":34,"code":541,"language":36,"meta":37,"style":37},[39,1774,1775,1779,1783,1787],{"__ignoreMap":37},[42,1776,1777],{"class":44,"line":45},[42,1778,548],{},[42,1780,1781],{"class":44,"line":51},[42,1782,553],{},[42,1784,1785],{"class":44,"line":57},[42,1786,558],{},[42,1788,1789],{"class":44,"line":64},[42,1790,563],{},[10,1792,566,1793,570],{},[427,1794,569],{},[10,1796,573],{},[10,1798,576,1799,579],{},[39,1800,36],{},[10,1802,1803],{},[13,1804],{"alt":584,"src":585},[10,1806,588],{},[402,1808,1809,1811,1815],{},[10,1810,593],{},[10,1812,1813],{},[427,1814,598],{},[402,1816,1817,1821,1825],{},[10,1818,603,1819,606],{},[39,1820,36],{},[10,1822,609,1823,612],{},[39,1824,36],{},[10,1826,615,1827,619],{},[427,1828,618],{},[402,1830,1831,1833,1837],{},[10,1832,624],{},[10,1834,1835],{},[427,1836,629],{},[402,1838,1839,1845,1853,1855],{},[10,1840,1841,637,1843,641],{},[39,1842,636],{},[39,1844,640],{},[10,1846,644,1847,647,1849,651,1851,655],{},[39,1848,636],{},[427,1850,650],{},[427,1852,654],{},[10,1854,658],{},[10,1856,1857,664],{},[427,1858,663],{},[402,1860,1861,1863],{},[10,1862,669],{},[402,1864,1865,1869],{},[10,1866,674,1867,678],{},[427,1868,677],{},[10,1870,681],{},[402,1872,1873,1877],{},[10,1874,686,1875],{},[427,1876,689],{},[10,1878,1879],{},[13,1880],{"alt":694,"src":695},[402,1882,1883,1885],{},[10,1884,700],{},[10,1886,1887],{},[13,1888],{"alt":694,"src":705},[198,1890,709],{"id":708},[10,1892,712,1893,716,1895,720],{},[39,1894,715],{},[39,1896,719],{},[32,1898,1899],{"className":175,"code":723,"language":177,"meta":37,"style":37},[39,1900,1901],{"__ignoreMap":37},[42,1902,1903,1905],{"class":44,"line":45},[42,1904,36],{"class":184},[42,1906,733],{"class":732},[10,1908,736],{},[32,1910,1912],{"className":1911,"code":740,"language":76,"meta":37},[74],[39,1913,740],{"__ignoreMap":37},[10,1915,1916],{},[13,1917],{"alt":694,"src":747},[10,1919,750],{},[32,1921,1922],{"className":175,"code":753,"language":177,"meta":37,"style":37},[39,1923,1924],{"__ignoreMap":37},[42,1925,1926,1928,1930,1932],{"class":44,"line":45},[42,1927,36],{"class":184},[42,1929,762],{"class":732},[42,1931,765],{"class":188},[42,1933,733],{"class":732},[10,1935,770,1936,773,1938,777],{},[39,1937,36],{},[39,1939,776],{},[32,1941,1942],{"className":175,"code":780,"language":177,"meta":37,"style":37},[39,1943,1944,1950],{"__ignoreMap":37},[42,1945,1946,1948],{"class":44,"line":45},[42,1947,640],{"class":184},[42,1949,733],{"class":732},[42,1951,1952,1954,1956,1958],{"class":44,"line":51},[42,1953,640],{"class":184},[42,1955,762],{"class":732},[42,1957,765],{"class":188},[42,1959,733],{"class":732},[24,1961,802],{"id":801},[198,1963,806],{"id":805},[10,1965,809],{},[32,1967,1968],{"className":175,"code":812,"language":177,"meta":37,"style":37},[39,1969,1970],{"__ignoreMap":37},[42,1971,1972,1974],{"class":44,"line":45},[42,1973,185],{"class":184},[42,1975,733],{"class":732},[10,1977,823,1978,827],{},[39,1979,826],{},[198,1981,831],{"id":830},[10,1983,466,1984,839,1987,494,1989,846],{},[468,1985,838],{"href":836,"rel":1986},[472],[427,1988,842],{},[39,1990,845],{},[10,1992,849,1993,853],{},[39,1994,852],{},[198,1996,857],{"id":856},[10,1998,860],{},[32,2000,2001],{"className":175,"code":863,"language":177,"meta":37,"style":37},[39,2002,2003,2009],{"__ignoreMap":37},[42,2004,2005,2007],{"class":44,"line":45},[42,2006,185],{"class":184},[42,2008,733],{"class":732},[42,2010,2011,2013,2015,2017],{"class":44,"line":51},[42,2012,185],{"class":184},[42,2014,762],{"class":732},[42,2016,765],{"class":188},[42,2018,733],{"class":732},[10,2020,884,2021,887],{},[39,2022,185],{},[24,2024,891],{"id":890},[10,2026,894],{},[198,2028,898],{"id":897},[10,2030,901],{},[32,2032,2033],{"className":175,"code":863,"language":177,"meta":37,"style":37},[39,2034,2035,2041],{"__ignoreMap":37},[42,2036,2037,2039],{"class":44,"line":45},[42,2038,185],{"class":184},[42,2040,733],{"class":732},[42,2042,2043,2045,2047,2049],{"class":44,"line":51},[42,2044,185],{"class":184},[42,2046,762],{"class":732},[42,2048,765],{"class":188},[42,2050,733],{"class":732},[10,2052,924],{},[198,2054,928],{"id":927},[10,2056,931],{},[32,2058,2059],{"className":175,"code":934,"language":177,"meta":37,"style":37},[39,2060,2061,2069],{"__ignoreMap":37},[42,2062,2063,2065,2067],{"class":44,"line":45},[42,2064,941],{"class":184},[42,2066,944],{"class":188},[42,2068,947],{"class":188},[42,2070,2071,2073,2075,2077,2079,2081],{"class":44,"line":51},[42,2072,941],{"class":184},[42,2074,944],{"class":188},[42,2076,956],{"class":188},[42,2078,959],{"class":188},[42,2080,962],{"class":188},[42,2082,965],{"class":188},[10,2084,968],{},[32,2086,2087],{"className":175,"code":971,"language":177,"meta":37,"style":37},[39,2088,2089],{"__ignoreMap":37},[42,2090,2091,2093,2095,2097,2099],{"class":44,"line":45},[42,2092,941],{"class":184},[42,2094,980],{"class":188},[42,2096,956],{"class":188},[42,2098,959],{"class":188},[42,2100,987],{"class":188},[10,2102,990],{},[32,2104,2105],{"className":175,"code":993,"language":177,"meta":37,"style":37},[39,2106,2107],{"__ignoreMap":37},[42,2108,2109,2111,2113,2115,2117],{"class":44,"line":45},[42,2110,941],{"class":184},[42,2112,1002],{"class":188},[42,2114,1005],{"class":732},[42,2116,1008],{"class":188},[42,2118,1011],{"class":188},[10,2120,2121,1016],{},[39,2122,941],{},[198,2124,1020],{"id":1019},[10,2126,1023],{},[32,2128,2129],{"className":175,"code":863,"language":177,"meta":37,"style":37},[39,2130,2131,2137],{"__ignoreMap":37},[42,2132,2133,2135],{"class":44,"line":45},[42,2134,185],{"class":184},[42,2136,733],{"class":732},[42,2138,2139,2141,2143,2145],{"class":44,"line":51},[42,2140,185],{"class":184},[42,2142,762],{"class":732},[42,2144,765],{"class":188},[42,2146,733],{"class":732},[10,2148,1046],{},[24,2150,1049],{"id":1049},[198,2152,1053],{"id":1052},[10,2154,1056,2155,1060],{},[39,2156,1059],{},[1062,2158,2159,2163,2165],{},[282,2160,1066,2161,1069],{},[39,2162,776],{},[282,2164,1072],{},[282,2166,1075],{},[10,2168,1078],{},[198,2170,1082],{"id":1081},[10,2172,1085],{},[32,2174,2175],{"className":175,"code":812,"language":177,"meta":37,"style":37},[39,2176,2177],{"__ignoreMap":37},[42,2178,2179,2181],{"class":44,"line":45},[42,2180,185],{"class":184},[42,2182,733],{"class":732},[10,2184,1098,2185,1101,2187,1104,2189,494],{},[39,2186,185],{},[39,2188,36],{},[39,2190,185],{},[198,2192,1110],{"id":1109},[10,2194,1113],{},[32,2196,2197],{"className":175,"code":1116,"language":177,"meta":37,"style":37},[39,2198,2199],{"__ignoreMap":37},[42,2200,2201,2203,2205,2207],{"class":44,"line":45},[42,2202,185],{"class":184},[42,2204,762],{"class":732},[42,2206,765],{"class":188},[42,2208,733],{"class":732},[10,2210,1131,2211,1134,2213,1137,2215,1140,2217,1144],{},[39,2212,185],{},[39,2214,36],{},[39,2216,640],{},[39,2218,1143],{},[342,2220,1147],{},{"title":37,"searchDepth":51,"depth":51,"links":2222},[2223,2224,2225,2230,2235,2240],{"id":382,"depth":51,"text":382},{"id":397,"depth":51,"text":397},{"id":458,"depth":51,"text":459,"children":2226},[2227,2228,2229],{"id":462,"depth":57,"text":463},{"id":523,"depth":57,"text":524},{"id":708,"depth":57,"text":709},{"id":801,"depth":51,"text":802,"children":2231},[2232,2233,2234],{"id":805,"depth":57,"text":806},{"id":830,"depth":57,"text":831},{"id":856,"depth":57,"text":857},{"id":890,"depth":51,"text":891,"children":2236},[2237,2238,2239],{"id":897,"depth":57,"text":898},{"id":927,"depth":57,"text":928},{"id":1019,"depth":57,"text":1020},{"id":1049,"depth":51,"text":1049,"children":2241},[2242,2243,2244],{"id":1052,"depth":57,"text":1053},{"id":1081,"depth":57,"text":1082},{"id":1109,"depth":57,"text":1110},{},{"title":377,"description":37},[360,1181,1182],1786795114366]