适用对象已掌握 C、Java 或类似静态编译型语言的开发者版本基准Python 3.10 及以上最后更新日期2026年9月第一章 语言概述与版本选择1.1 Python 是什么Python 是由 Guido van Rossum 于1989年底发明、1991年首次公开发布的解释型、面向对象、动态类型高级编程语言。其设计哲学奉行“优雅、明确、简单”核心原则是“用一种方法最好是只有一种方法来做一件事”通过强制缩进的语法规则保障代码可读性。Python 核心优势在于“胶水语言”特性既可以快速编写业务逻辑也可以便捷调用C/C编写的高性能模块同时拥有极其丰富的标准库与第三方生态。主要应用领域Web开发Django、Flask、FastAPI 等框架支持快速构建后端服务AI与机器学习PyTorch、TensorFlow、scikit-learn 等主流框架均基于Python科学计算与数据分析NumPy、Pandas、SciPy 成为数据行业事实标准系统运维与自动化脚本化处理批量任务、服务器管理、测试自动化桌面GUITkinter、PyQt、PySide 等跨平台界面开发网络与爬虫requests、Scrapy 等工具支持网络请求与数据采集1.2 与 C/Java 的核心差异对于有静态语言基础的开发者重点关注以下本质区别维度C / JavaPython执行方式编译为机器码/字节码后执行解释器逐行解析执行无独立编译步骤变量规则必须显式声明类型静态类型赋值自动推断类型运行时可动态改变类型代码块界定{}花括号包裹冒号 缩进标准4空格强制格式统一整数除法5/2 2整数截断5/2 2.5浮点结果整数除法用//字符串编码需手动处理编码转换默认 UTF-8原生支持 Unicode内存管理C手动管理/Java GC 回收引用计数 分代垃圾回收自动管理程序入口必须有main()函数模块顶层代码即为执行入口无强制入口函数运行性能编译优化后性能极高解释执行性能偏低热点逻辑可通过C扩展加速1.3 版本选择建议版本生命周期截至2026年9月Python 2.x已于2020年1月1日终止全部维护最终版本为 2.7.18。仅用于极端老旧项目兼容新项目绝对禁止使用。Python 3.x 维护状态预发布版3.15.xbeta/alpha 阶段用于新特性验证不建议生产环境使用活跃稳定版3.14.x、3.13.x功能冻结持续接收安全与缺陷修复新项目首选安全修复版3.12.x、3.11.x、3.10.x仅修复高危安全漏洞不再新增功能已终止支持EOL3.9 及更早版本不再接收任何更新选型建议生产环境优先选择3.13.x 或 3.12.x生态兼容性最佳稳定性有保障尝鲜新特性可选择 3.14.x老项目兼容最低不低于 3.10.x支持 match-case 等现代语法1.4 Python 2 与 3 核心语法差异仅用于理解老旧代码迁移场景新项目直接基于Python 3开发对比项Python 2Python 3print语句print Hello函数print(Hello)默认编码ASCII 编码中文需额外声明默认 UTF-8原生支持中文整数除法5/2 → 2整数截断5/2 → 2.5浮点除法字符串类型str字节串 unicode字符串统一为strUnicode 字符串异常捕获except Exception, e:except Exception as e:range函数返回列表大数据量占内存返回迭代器惰性生成节省内存第二章 环境搭建2.1 官方下载渠道官方主站https://www.python.org/ 各版本、各平台安装包与源码汇总Windows 安装包页https://www.python.org/downloads/windows/ 提供64位/32位/ARM64安装包、可嵌入运行包源码下载页https://www.python.org/downloads/source/ 提供 gzip、xz 压缩源码包用于Linux等平台编译安装2.2 Windows 平台安装安装步骤下载安装包推荐选择64位稳定版文件格式如python-3.13.0-amd64.exe运行安装程序底部两个关键选项✅Add Python.exe to PATH自动配置系统环境变量命令行可直接调用强烈建议勾选Install Now默认安装到当前用户目录%LocalAppData%\Programs\Python\无需管理员权限Customize installation自定义安装路径与组件适合全局部署自定义安装可选组件Documentation官方离线文档pipPython 包管理工具必选tcl/tk and IDLEGUI 工具与内置代码编辑器Python test suite标准库测试套件安装完成后命令行执行python --version验证是否成功补充Python LauncherWindows 安装后自带py命令Python Launcher可管理多版本Pythonpy调用默认版本py -3.13调用指定 3.13 版本py -2调用Python 2若安装2.3 Linux 平台安装多数Linux发行版预装Python 3执行python3 --version可查看版本。方式一包管理器安装推荐# Debian / Ubuntu sudo apt update sudo apt install python3 python3-pip # CentOS / RHEL sudo dnf install python3 python3-pip方式二源码编译安装定制化需求# 1. 安装编译依赖 sudo apt install build-essential zlib1g-dev libffi-dev libssl-dev # 2. 下载并解压源码 wget https://www.python.org/ftp/python/3.13.0/Python-3.13.0.tgz tar -xzf Python-3.13.0.tgz cd Python-3.13.0 # 3. 配置与编译 ./configure --enable-optimizations make -j$(nproc) # 4. 安装altinstall 不覆盖系统python3避免破坏系统依赖 sudo make altinstall默认安装到/usr/local/bin/python3.13。2.4 macOS 平台安装系统自带较新版本 macOS 预装 Python 3版本通常偏低推荐方式Homebrew 安装brew install python3.13官方安装包从官网下载.pkg格式安装包图形化引导安装2.5 环境变量配置2.5.1 PATH 环境变量作用让系统在任意目录下都能识别python和pip命令。Windows安装时勾选「Add Python to PATH」则自动配置手动配置路径为Python安装目录 Scripts子目录Linux/macOS在 Shell 配置文件~/.bashrc、~/.zshrc中添加export PATH/usr/local/bin:$PATH执行source ~/.bashrc立即生效。2.5.2 Python 专属环境变量变量名作用PYTHONPATH模块搜索路径import时优先查找该目录用于扩展自定义库PYTHONSTARTUP交互式解释器启动时自动执行的脚本可预置常用函数与配置PYTHONHOME指定 Python 标准库根目录用于多版本切换与便携部署PYTHONDONTWRITEBYTECODE设为1时禁止生成.pyc字节码缓存文件2.6 安装验证打开终端/命令提示符执行以下命令验证环境# 验证Python版本 python --version # Linux/macOS 默认为 python3 python3 --version # 验证pip包管理工具 pip --version # 进入交互式解释器 python出现提示符即为成功输入exit()退出交互模式。第三章 运行 Python 的三种方式3.1 交互式解释器REPL交互式模式即「读-求值-输出循环」Read-Eval-Print Loop逐行输入代码即时返回结果适合快速验证语法、测试代码片段、调试算法逻辑。启动与基础操作启动终端执行pythonWindows或python3Linux/macOS单行代码输入后回车直接执行输出结果多行代码函数、循环、类换行后提示符变为...按缩进规则输入空行结束代码块常用交互技巧历史调用上下方向键调取之前输入的代码Tab补全输入标识符前缀后按Tab自动补全变量、函数、模块名查看帮助help(对象)例如help(print)查看函数完整文档查看属性dir(对象)列出对象的所有属性与方法清屏Windows 输入import os; os.system(cls)Linux/macOS 用os.system(clear)常用启动参数参数功能说明-V/--version输出版本号后直接退出-c 代码字符串直接执行引号内的代码无需进入交互模式-i 脚本文件执行脚本后进入交互模式方便调试脚本内变量-m 模块名以模块方式运行例如python -m pip install xxx、python -m http.server-O优化模式移除断言与调试代码3.2 脚本文件运行将完整代码保存为.py后缀的文本文件通过解释器批量执行是正式项目开发的主要方式。基础运行命令# Windows python script.py # Linux / macOS python3 script.py脚本头部规范Linux/macOS在脚本第一行添加 shebang 声明赋予执行权限后可直接运行脚本#!/usr/bin/env python3 # -*- coding: utf-8 -*- print(Hello, World!)赋予权限并执行chmod x script.py ./script.py3.3 PyCharm 集成开发环境PyCharm 是 JetBrains 出品的专业 Python IDE具备智能补全、代码调试、版本控制、环境管理等能力是工业级开发的首选工具。版本与获取官方下载页https://www.jetbrains.com/pycharm/download/产品模式统一产品架构核心功能永久免费高级功能提供30天免费试用免费核心功能Python 代码编辑、智能补全、调试器、内置终端、Git 集成、虚拟环境管理、Jupyter 基础支持Pro 高级功能全功能 Jupyter、Web 框架支持Django/Flask/FastAPI、前端开发、远程开发、数据库工具、本地 AI 补全初始配置要点中文界面新版本默认内置中文语言包通过File → Settings → Appearance Behavior → System Settings → Language and Region选择「中文简体」重启 IDE 生效。配置解释器新建项目时选择「New environment using Virtualenv」自动创建项目专属虚拟环境隔离依赖。常用快捷键运行代码Shift F10调试代码Shift F9格式化代码Ctrl Alt L全局搜索双击 Shift第四章 核心语法速览对比 C/Java面向有静态语言基础的开发者重点梳理差异语法快速建立 Python 代码认知。4.1 Hello World 程序print(Hello, World!)无需定义main函数顶层代码直接执行print是内置函数必须加括号调用语句末尾无需分号加分号语法合法但不符合规范4.2 变量与数据类型4.2.1 变量声明Python 是动态类型语言变量无需声明类型赋值即定义运行时可改变类型age 25 # 整数 height 1.75 # 浮点数 name 张三 # 字符串 is_valid True # 布尔值4.2.2 基础数据类型类型说明示例int整数无位数大小限制10,-5,0xFFfloat双精度浮点数3.14,1.2e3bool布尔值首字母大写True,FalsestrUnicode 字符串支持单/双/三引号hello, world, 多行文本NoneType空值对应 Cnullptr/ JavanullNone4.2.3 核心容器类型列表 list对应 C vector / Java ArrayList 有序、可变、元素可重复nums [1, 2, 3, text] nums.append(4) # 尾部追加 nums[0] # 索引访问从0开始 len(nums) # 获取长度元组 tuple有序、不可变相当于常量列表用于多返回值、解包point (10, 20) x, y point # 序列解包赋值字典 dict对应 C map / Java HashMap 键值对存储键唯一查找效率O(1)student {name: 李四, age: 20} student[name] # 按键访问 student[grade] 3 # 新增键值对集合 set对应 C set / Java HashSet 无序、元素唯一用于去重、集合运算s {1, 2, 2, 3} # 自动去重结果 {1, 2, 3} s.add(4)4.3 代码块与缩进Python 使用缩进替代{}定义代码块强制代码格式统一标准缩进4个空格同一代码块缩进必须一致禁止空格与 Tab 混用冒号:标记代码块开始if age 18: print(成年) print(独立承担民事责任) else: print(未成年)4.4 控制流语句4.4.1 条件判断基础 if-elif-else 结构score 85 if score 90: grade A elif score 80: grade B elif score 60: grade C else: grade DPython 3.10 支持 match-case 模式匹配类似 switchmatch status: case 0: print(正常) case 1: print(警告) case 2: print(错误) case _: print(未知状态)4.4.2 循环语句for 循环遍历可迭代对象类似 C 范围 for# 遍历列表 for item in [1, 2, 3]: print(item) # 配合 range 生成整数序列 for i in range(5): # 0,1,2,3,4 print(i) for i in range(1, 10, 2): # 1,3,5,7,9 print(i)while 循环条件满足时循环执行count 0 while count 5: print(count) count 1循环控制关键字break跳出整个循环continue跳过本次循环进入下一轮else子句循环正常结束未被 break 打断时执行4.5 函数4.5.1 函数定义使用def关键字定义无需声明返回值类型def add(a, b): return a b4.5.2 参数类型位置参数按顺序传递默认参数调用时可省略关键字参数按参数名传递顺序可变可变参数*args接收任意位置参数**kwargs接收任意关键字参数def func(a, b10, *args, **kwargs): print(fa{a}, b{b}) print(f可变位置参数{args}) print(f可变关键字参数{kwargs}) func(1, 2, 3, 4, x5, y6)4.5.3 lambda 匿名函数用于简单单行函数场景# 语法lambda 参数列表: 表达式 square lambda x: x * x print(square(5)) # 输出 254.6 异常处理使用 try-except 捕获异常对应 C/Java 的 try-catchtry: result 10 / 0 except ZeroDivisionError as e: print(f除零错误{e}) except ValueError as e: print(f数值错误{e}) else: print(执行成功结果, result) finally: print(无论是否异常都执行用于资源清理)4.7 典型 Pythonic 语法糖4.7.1 列表推导式快速生成列表替代循环 append# 生成0-9的平方 squares [x**2 for x in range(10)] # 带条件过滤 evens [x for x in range(20) if x % 2 0]4.7.2 上下文管理器 with自动管理资源替代手动打开/关闭异常时也能正确释放# 自动关闭文件 with open(data.txt, r, encodingutf-8) as f: content f.read() # 离开 with 块自动关闭文件4.7.3 序列解包# 交换变量无需临时变量 a, b b, a # 列表解包 first, *middle, last [1, 2, 3, 4, 5] # first1, middle[2,3,4], last54.7.4 枚举与并行遍历# enumerate同时获取索引与元素 for index, value in enumerate([a, b, c]): print(index, value) # zip并行遍历多个列表 names [张三, 李四] ages [20, 22] for name, age in zip(names, ages): print(name, age)4.7.5 f-string 格式化Python 3.6 推荐的字符串格式化方式name 王五 age 24 print(f{name} 今年 {age} 岁) # 支持内嵌表达式 print(f十年后年龄{age 10} 岁)第五章 学习路径与核心资源5.1 四阶段学习规划基于已有编程基础通过知识迁移快速掌握 Python 开发能力第1周基础语法与核心容器掌握变量、缩进、控制流、函数定义熟练使用 list、dict、tuple、set 四种容器及常用方法理解动态类型特性规避基础类型坑练习用 Python 实现常见算法题、简单数据处理脚本第2周进阶语法与系统交互模块与包的导入机制文件读写、路径处理、目录操作异常处理体系与最佳实践迭代器、生成器基础练习编写日志解析、文件批量处理工具脚本第3周面向对象与高级特性类的定义、继承、多态常用魔术方法__init__、__str__、__len__等装饰器、上下文管理器实现原理练习封装一个简单的数据处理类库第4周生态入门与方向实践掌握 pip 包管理、虚拟环境使用选择一个方向深入自动化运维os、subprocess、threading 模块数据分析NumPy、Pandas 基础入门Web 开发Flask / FastAPI 快速上手网络爬虫requests、BeautifulSoup 基础使用5.2 必备开发习惯虚拟环境隔离每个项目创建独立虚拟环境避免全局包版本冲突遵循 PEP 8 规范4空格缩进、命名规范函数/变量小写蛇形类大驼峰、合理空行优先内置能力用列表推导、生成器、上下文管理器、内置函数避免重复造轮子文档字符串公共函数、类添加 docstring 说明用途与参数异常优先用异常机制处理错误场景而非返回错误码5.3 权威学习资源资源名称地址定位与说明Python 官方文档https://docs.python.org/最权威参考资料支持版本切换包含语言参考、标准库、教程等完整内容官方入门教程https://docs.python.org/3/tutorial/官方出品面向有编程基础者系统讲解 Python 核心特性标准库参考https://docs.python.org/3/library/Python 内置模块大全详细说明每个模块的功能、API、示例开发必备PyPI 包索引https://pypi.org/Python 第三方软件仓库近90万个开源包查找与安装第三方库的官方渠道菜鸟教程 Python3https://www.runoob.com/python3/中文快速入门教程语法点清晰适合快速查阅基础语法第六章 标准库概览Python 自带功能强大的标准库无需安装即可使用覆盖绝大多数开发场景。核心分类如下6.1 文本与数据处理string通用字符串操作工具re正则表达式复杂文本匹配与替换jsonJSON 数据编解码csvCSV 表格文件读写struct二进制数据打包与解析6.2 文件与系统操作os操作系统接口文件、目录、进程管理pathlib面向对象的路径处理推荐替代 os.pathshutil高级文件操作复制、移动、压缩解压glob文件路径通配符匹配tempfile临时文件与目录创建6.3 数学与数值math基础数学函数与常数random伪随机数生成statistics基础统计计算decimal高精度十进制运算6.4 时间与日期datetime日期时间对象处理、格式化time时间戳、睡眠、系统时间calendar日历相关计算6.5 并发与网络threading多线程编程multiprocessing多进程编程规避 GIL 限制asyncio异步 IO 编程框架socket底层网络编程接口urllibURL 处理与 HTTP 请求6.6 开发工具logging标准日志记录框架unittest内置单元测试框架pdb代码调试器argparse命令行参数解析附录常见避坑指南缩进错误 IndentationError原因同一代码块缩进不一致、空格与 Tab 混用解决统一使用4空格缩进编辑器设置「Tab替换为4空格」整数除法行为差异C/Java 中5/2结果为2Python 中5/2结果为2.5整数截断除法使用//5//2 2可变默认参数陷阱错误写法def func(a[]):列表默认参数在函数定义时创建多次调用会共享正确写法def func(aNone): if a is None: a []Windows 控制台中文乱码原因Windows 控制台默认 GBK 编码Python 输出 UTF-8解决代码开头添加import sys sys.stdout.reconfigure(encodingutf-8)全局变量修改报错函数内修改全局变量需声明global否则会被识别为局部变量count 0 def add(): global count count 1pip 命令找不到原因Python 的Scripts目录未加入系统 PATH解决添加环境变量或使用python -m pip替代直接 pip 命令虚拟环境使用规范创建python -m venv venv激活Windowsvenv\Scripts\activateLinux/macOSsource venv/bin/activate退出deactivate模块导入路径错误相对导入使用不当、运行脚本路径不对导致 ImportError建议从项目根目录运行脚本或配置PYTHONPATH环境变量