Python 中文完整教程目录
Python 教程¶
Python 是一门易于学习、功能强大的编程语言。它提供了高效的高级数据结构,还能简单有效地面向对象编程。Python 优雅的语法和动态类型以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的理想语言。
Python 官网(Welcome to Python.org)上免费提供了 Python 解释器和扩展的标准库,包括源码和适用于各操作系统的机器码形式,并可自由地分发。Python 官网还包含许多免费的第三方 Python 模块、程序和工具发布包及文档链接。
Python 解释器易于扩展,使用 C 或 C++(或其他 C 能调用的语言)即可为 Python 扩展新功能和数据类型。Python 也可用作定制软件中的扩展程序语言。
本教程只是简单介绍了 Python 语言概念和功能。读者在阅读本教程时最好使用 Python 解释器以便随时动手练习。本教程中的所有示例都是相互独立的并可离线阅读。
标准库与模块的内容详见 Python 标准库。Python 语言参考手册 是更正规的语言定义。如要编写 C 或 C++ 扩展请参考 扩展和嵌入 Python 解释器 和 Python/C API 参考手册。此外,深入讲解 Python 的书籍也有很多。
本教程对每一个功能的介绍并不完整,甚至没有涉及全部常用功能,只是介绍了 Python 中最值得学习的功能,旨在让读者快速感受一下 Python 的特色。学完本教程的读者可以阅读和编写 Python 模块和程序,也可以继续学习 Python 标准库。
强烈推荐阅读 术语对照表。
- 1. 课前甜点
- 2. Python 解释器
- 2.1. 调用解释器
- 2.1.1. 传入参数
- 2.1.2. 交互模式
- 2.2. 解释器的运行环境
- 2.2.1. 源文件的字符编码
- 2.1. 调用解释器
- 3. Python 速览
- 3.1. Python 用作计算器
- 3.1.1. 数字
- 3.1.2. 文本
- 3.1.3. 列表
- 3.2. 走向编程的第一步
- 3.1. Python 用作计算器
- 4. 更多控制流工具
- 4.1. if 语句
- 4.2. for 语句
- 4.3. range() 函数
- 4.4. 循环中的 break、continue 语句及 else 子句
- 4.5. pass 语句
- 4.6. match 语句
- 4.7. 定义函数
- 4.8. 函数定义详解
- 4.8.1. 默认值参数
- 4.8.2. 关键字参数
- 4.8.3. 特殊参数
- 4.8.3.1. 位置或关键字参数
- 4.8.3.2. 仅位置参数
- 4.8.3.3. 仅限关键字参数
- 4.8.3.4. 函数示例
- 4.8.3.5. 小结
- 4.8.4. 任意实参列表
- 4.8.5. 解包实参列表
- 4.8.6. Lambda 表达式
- 4.8.7. 文档字符串
- 4.8.8. 函数注解
- 4.9. 小插曲:编码风格
- 5. 数据结构
- 5.1. 列表详解
- 5.1.1. 用列表实现堆栈
- 5.1.2. 用列表实现队列
- 5.1.3. 列表推导式
- 5.1.4. 嵌套的列表推导式
- 5.2. del 语句
- 5.3. 元组和序列
- 5.4. 集合
- 5.5. 字典
- 5.6. 循环的技巧
- 5.7. 深入条件控制
- 5.8. 序列和其他类型的比较
- 5.1. 列表详解
- 6. 模块
- 6.1. 模块详解
- 6.1.1. 以脚本方式执行模块
- 6.1.2. 模块搜索路径
- 6.1.3. “已编译的” Python 文件
- 6.2. 标准模块
- 6.3. dir() 函数
- 6.4. 包
- 6.4.1. 从包中导入 *
- 6.4.2. 相对导入
- 6.4.3. 多目录中的包
- 6.1. 模块详解
- 7. 输入与输出
- 7.1. 更复杂的输出格式
- 7.1.1. 格式化字符串字面值
- 7.1.2. 字符串 format() 方法
- 7.1.3. 手动格式化字符串
- 7.1.4. 旧式字符串格式化方法
- 7.2. 读写文件
- 7.2.1. 文件对象的方法
- 7.2.2. 使用 json 保存结构化数据
- 7.1. 更复杂的输出格式
- 8. 错误和异常
- 8.1. 语法错误
- 8.2. 异常
- 8.3. 异常的处理
- 8.4. 触发异常
- 8.5. 异常链
- 8.6. 用户自定义异常
- 8.7. 定义清理操作
- 8.8. 预定义的清理操作
- 8.9. 引发和处理多个不相关的异常
- 8.10. 用注释细化异常情况
- 9. 类
- 9.1. 名称和对象
- 9.2. Python 作用域和命名空间
- 9.2.1. 作用域和命名空间示例
- 9.3. 初探类
- 9.3.1. 类定义语法
- 9.3.2. Class 对象
- 9.3.3. 实例对象
- 9.3.4. 方法对象
- 9.3.5. 类和实例变量
- 9.4. 补充说明
- 9.5. 继承
- 9.5.1. 多重继承
- 9.6. 私有变量
- 9.7. 杂项说明
- 9.8. 迭代器
- 9.9. 生成器
- 9.10. 生成器表达式
- 10. 标准库简介
- 10.1. 操作系统接口
- 10.2. 文件通配符
- 10.3. 命令行参数
- 10.4. 错误输出重定向和程序终止
- 10.5. 字符串模式匹配
- 10.6. 数学
- 10.7. 互联网访问
- 10.8. 日期和时间
- 10.9. 数据压缩
- 10.10. 性能测量
- 10.11. 质量控制
- 10.12. 自带电池
- 11. 标准库简介 —— 第二部分
- 11.1. 格式化输出
- 11.2. 模板
- 11.3. 使用二进制数据记录格式
- 11.4. 多线程
- 11.5. 日志记录
- 11.6. 弱引用
- 11.7. 用于操作列表的工具
- 11.8. 十进制浮点运算
- 12. 虚拟环境和包
- 12.1. 概述
- 12.2. 创建虚拟环境
- 12.3. 使用pip管理包
- 13. 接下来?
- 14. 交互式编辑和编辑历史
- 14.1. Tab 补全和编辑历史
- 14.2. 默认交互式解释器的替代品
- 15. 浮点算术:争议和限制
- 15.1. 表示性错误
- 16. 附录
- 16.1. 交互模式
- 16.1.1. 错误处理
- 16.1.2. 可执行的Python脚本
- 16.1.3. 交互式启动文件
- 16.1.4. 定制模块
- 16.1. 交互模式
相关文章:
Python 中文完整教程目录
Python 教程 Python 是一门易于学习、功能强大的编程语言。它提供了高效的高级数据结构,还能简单有效地面向对象编程。Python 优雅的语法和动态类型以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的理想语言。 Python 官网(…...
C/C++---------------LeetCode第35. 搜索插入位置
插入的位置 题目及要求二分查找在main内使用 题目及要求 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: …...

网络安全--基于Kali的网络扫描基础技术
文章目录 1. 标准ICMP扫描1.1使用Ping命令1.1.1格式1.1.2实战 1.2使用Nmap工具1.2.1格式1.2.2实战1.2.2.1主机在线1.2.2.2主机不在线 1.3使用Fping命令1.3.1格式1.3.2实战 2. 时间戳查询扫描2.1格式2.2实战 3. 地址掩码查询扫描3.1格式3.2实战 2. TCP扫描2.1TCP工作机制2.2TCP …...

C语言——求π的近似值
#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h> #include<math.h> int main() {int s;double n,t,pi;t1;pi0;n1.0;s1;while (fabs(t)>1e-6){pipit; nn2; s-s; ts/n;}pipi*4;printf("pi%lf\n",pi);return 0; }这里是求小数点后6位——1e-6&#…...
如何使用ffmpeg转换图片格式
ffmpeg简介与图片格式介绍 windows安装ffmpeg,从如下网站下载release版本 https://www.gyan.dev/ffmpeg/builds/ ffmpeg 6.1版本仍然不支持heic的图片格式,未来可能会支持,具体见该issue: https://trac.ffmpeg.org/ticket/6521 …...
11 动态规划解最后一块石头的重量II
来源:LeetCode第1049题 难度:中等 描述:有一堆石头,用证书数组stones表示,其中stones[i]表示第i块石头的重量,每一回合,从中选出任意两块石头,然后将他们放在一起粉碎,…...
LeetCode算法题解(动态规划,股票买卖)|LeetCode121. 买卖股票的最佳时机、LeetCode122. 买卖股票的最佳时机 II
一、LeetCode121. 买卖股票的最佳时机 题目链接:121. 买卖股票的最佳时机 题目描述: 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一…...

python实验3 石头剪刀布游戏
实验3:石头剪刀布游戏 一、实验目的二、知识要点图三、实验1. 石头剪刀布2. 实现大侠个人信息 一、实验目的 了解3类基本组合数据类型。理解列表概念并掌握Python中列表的使用。理解字典概念并掌握Python中字典的使用。运用jieba库进行中文分词并进行文本词频统计。…...
米贸搜|如何设置 Facebook 转换 API + 事件重复数据删除
Facebook Pixel 可让您跟踪用户在您网站上的行为、收集再营销受众并创建相似对象。如果 Facebook 像素实现正确,它将向 FB 机器学习算法提供相关信息。 FB ML 将使用像素数据向最有可能转化的人展示您的广告。 几年来,我们可以通过 JavaScript 代码、应…...
python每日一题——11滑动窗口最大值
题目 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值 。 示例 1: 输入:nums [1,3,-1,-3,5,3,6,7], k 3…...

【C++ 程序设计入门基础】- 第3节-循环结构01
目录 循环结构 一、for 语句 for 循环案例 输入一个整数n,输出1~n的所有整数。 编译运行,查看输出结果 编译调试 for 循环结构语义分析 二、beak 语句 三、continue 语句 案例1: 案例2: 案例3: 循环…...

人工智能原理复习--知识表示(一)
文章目录 上一篇知识概述命题逻辑谓词逻辑谓词逻辑的应用 下一篇 上一篇 人工智能原理复习–绪论 知识概述 知识就是人类认识自然界的精神产物,是人类进行智能活动的基础。 是经过加工的信息,包括事实、信念和启发式规则。 分类: 按作用可…...

网络运维与网络安全 学习笔记2023.11.28
网络运维与网络安全 学习笔记 第二十九天 今日目标 OSPF汇总之域间路由、OSPF汇总之外部路由、OSPF链路认证 OSPF安全认证之区域认证、OSPF虚链路 OSPF汇总指域间路由 项目背景 企业内网运行多区域的OSPF网络,在R1 上存在多个不稳定的链路 R1上的不稳定链路&a…...

Rust开发——数据对象的内存布局
枚举与Sized 数据 一般数据类型的布局是其大小(size)、对齐方式(align)及其字段的相对偏移量。 1. 枚举(Enum)的布局: 枚举类型在内存中的布局通常是由编译器来确定的。不同的编译器可能有不…...
mySQL踩坑记录
1.MYSQL Workbench-8.0.27.1出现"Exception: Current profile has no WMI enabled"错误的解决方法 MYSQL Workbench-8.0.27.1出现“Exception: Current profile has no WMI enabled“错误的解决方法_赛风扥的博客-CSDN博客 C:\Program Files\MySQL\MySQL Workbench …...

【Java】使用 IDEA 快速生成 SpringBoot 模块
项目目录下新建 module 模块 在 pom.xml 更改为 spring initializr 配置之后的 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchem…...

2023网络安全产业图谱
1. 前言 2023年7月10日,嘶吼安全产业研究院联合国家网络安全产业园区(通州园)正式发布《嘶吼2023网络安全产业图谱》。 嘶吼安全产业研究院根据当前网络安全发展规划与趋势发布《嘶吼2023网络安全产业图谱》调研,旨在进一步了解…...

一则 MongoDB 副本集迁移实操案例
文中详细阐述了通过全量 增量 Oplog 的迁移方式,完成一套副本集 MongoDB 迁移的全过程。 作者:张然,DBA 数据库技术爱好者~ 爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。 本文约 900…...

2022年03月 Scratch图形化(四级)真题解析#中国电子学会#全国青少年软件编程等级考试
Scratch等级考试(1~4级)全部真题・点这里 一、单选题(共10题,每题2分,共30分) 第1题 由1,2,3,4,5,0这六个数字经过排列组合能够组成多少个六位数偶数?注意:每一位都不相同,最高位不能为0。 A:720 B:360 C:312 D:88 答案:C 逻辑知识单选题 第2题 运行以下程…...

传音荣获2023首届全国人工智能应用场景创新挑战赛“智能家居专项赛”三等奖
近日,中国人工智能学会与科技部新一代人工智能发展研究中心联合举办2023首届全国人工智能应用场景创新挑战赛(2023 1st China’s Innovation Challenge on Artificial Intelligence Application Scene,以下简称CICAS 2023),吸引了…...

stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...

高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
为什么要创建 Vue 实例
核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...

DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态
前言 在人工智能技术飞速发展的今天,深度学习与大模型技术已成为推动行业变革的核心驱动力,而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心,系统性地呈现了两部深度技术著作的精华:…...

基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)
引言 在嵌入式系统中,用户界面的设计往往直接影响到用户体验。本文将以STM32微控制器和OLED显示屏为例,介绍如何实现一个多级菜单系统。该系统支持用户通过按键导航菜单,执行相应操作,并提供平滑的滚动动画效果。 本文设计了一个…...
[特殊字符] 手撸 Redis 互斥锁那些坑
📖 手撸 Redis 互斥锁那些坑 最近搞业务遇到高并发下同一个 key 的互斥操作,想实现分布式环境下的互斥锁。于是私下顺手手撸了个基于 Redis 的简单互斥锁,也顺便跟 Redisson 的 RLock 机制对比了下,记录一波,别踩我踩过…...
2025年低延迟业务DDoS防护全攻略:高可用架构与实战方案
一、延迟敏感行业面临的DDoS攻击新挑战 2025年,金融交易、实时竞技游戏、工业物联网等低延迟业务成为DDoS攻击的首要目标。攻击呈现三大特征: AI驱动的自适应攻击:攻击流量模拟真实用户行为,差异率低至0.5%,传统规则引…...
前端工具库lodash与lodash-es区别详解
lodash 和 lodash-es 是同一工具库的两个不同版本,核心功能完全一致,主要区别在于模块化格式和优化方式,适合不同的开发环境。以下是详细对比: 1. 模块化格式 lodash 使用 CommonJS 模块格式(require/module.exports&a…...