当前位置: 首页 > news >正文

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. 源文件的字符编码
  • 3. Python 速览
    • 3.1. Python 用作计算器
      • 3.1.1. 数字
      • 3.1.2. 文本
      • 3.1.3. 列表
    • 3.2. 走向编程的第一步
  • 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. 序列和其他类型的比较
  • 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. 多目录中的包
  • 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 保存结构化数据
  • 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. 定制模块

相关文章:

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&#xff0c;从如下网站下载release版本 https://www.gyan.dev/ffmpeg/builds/ ffmpeg 6.1版本仍然不支持heic的图片格式&#xff0c;未来可能会支持&#xff0c;具体见该issue&#xff1a; https://trac.ffmpeg.org/ticket/6521 …...

11 动态规划解最后一块石头的重量II

来源&#xff1a;LeetCode第1049题 难度&#xff1a;中等 描述&#xff1a;有一堆石头&#xff0c;用证书数组stones表示&#xff0c;其中stones[i]表示第i块石头的重量&#xff0c;每一回合&#xff0c;从中选出任意两块石头&#xff0c;然后将他们放在一起粉碎&#xff0c;…...

LeetCode算法题解(动态规划,股票买卖)|LeetCode121. 买卖股票的最佳时机、LeetCode122. 买卖股票的最佳时机 II

一、LeetCode121. 买卖股票的最佳时机 题目链接&#xff1a;121. 买卖股票的最佳时机 题目描述&#xff1a; 给定一个数组 prices &#xff0c;它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票&#xff0c;并选择在 未来的某一…...

python实验3 石头剪刀布游戏

实验3&#xff1a;石头剪刀布游戏 一、实验目的二、知识要点图三、实验1. 石头剪刀布2. 实现大侠个人信息 一、实验目的 了解3类基本组合数据类型。理解列表概念并掌握Python中列表的使用。理解字典概念并掌握Python中字典的使用。运用jieba库进行中文分词并进行文本词频统计。…...

米贸搜|如何设置 Facebook 转换 API + 事件重复数据删除

Facebook Pixel 可让您跟踪用户在您网站上的行为、收集再营销受众并创建相似对象。如果 Facebook 像素实现正确&#xff0c;它将向 FB 机器学习算法提供相关信息。 FB ML 将使用像素数据向最有可能转化的人展示您的广告。 几年来&#xff0c;我们可以通过 JavaScript 代码、应…...

python每日一题——11滑动窗口最大值

题目 给你一个整数数组 nums&#xff0c;有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值 。 示例 1&#xff1a; 输入&#xff1a;nums [1,3,-1,-3,5,3,6,7], k 3…...

【C++ 程序设计入门基础】- 第3节-循环结构01

目录 循环结构 一、for 语句 for 循环案例 输入一个整数n&#xff0c;输出1&#xff5e;n的所有整数。 编译运行&#xff0c;查看输出结果 编译调试 for 循环结构语义分析 二、beak 语句 三、continue 语句 案例1&#xff1a; 案例2&#xff1a; 案例3&#xff1a; 循环…...

人工智能原理复习--知识表示(一)

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

网络运维与网络安全 学习笔记2023.11.28

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

Rust开发——数据对象的内存布局

枚举与Sized 数据 一般数据类型的布局是其大小&#xff08;size&#xff09;、对齐方式&#xff08;align&#xff09;及其字段的相对偏移量。 1. 枚举&#xff08;Enum&#xff09;的布局&#xff1a; 枚举类型在内存中的布局通常是由编译器来确定的。不同的编译器可能有不…...

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日&#xff0c;嘶吼安全产业研究院联合国家网络安全产业园区&#xff08;通州园&#xff09;正式发布《嘶吼2023网络安全产业图谱》。 嘶吼安全产业研究院根据当前网络安全发展规划与趋势发布《嘶吼2023网络安全产业图谱》调研&#xff0c;旨在进一步了解…...

一则 MongoDB 副本集迁移实操案例

文中详细阐述了通过全量 增量 Oplog 的迁移方式&#xff0c;完成一套副本集 MongoDB 迁移的全过程。 作者&#xff1a;张然&#xff0c;DBA 数据库技术爱好者~ 爱可生开源社区出品&#xff0c;原创内容未经授权不得随意使用&#xff0c;转载请联系小编并注明来源。 本文约 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首届全国人工智能应用场景创新挑战赛“智能家居专项赛”三等奖

近日&#xff0c;中国人工智能学会与科技部新一代人工智能发展研究中心联合举办2023首届全国人工智能应用场景创新挑战赛&#xff08;2023 1st China’s Innovation Challenge on Artificial Intelligence Application Scene&#xff0c;以下简称CICAS 2023)&#xff0c;吸引了…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

<6>-MySQL表的增删查改

目录 一&#xff0c;create&#xff08;创建表&#xff09; 二&#xff0c;retrieve&#xff08;查询表&#xff09; 1&#xff0c;select列 2&#xff0c;where条件 三&#xff0c;update&#xff08;更新表&#xff09; 四&#xff0c;delete&#xff08;删除表&#xf…...

51c自动驾驶~合集58

我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留&#xff0c;CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制&#xff08;CCA-Attention&#xff09;&#xff0c;…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...