Python 完全自学教程

本书正在编写,计划于2022年出版,以下是本书目录已经部分书稿,请先睹为快。

前言

是故学然后知不足,教然后知困。知不足然后能自反也,知困然后能自强也。故曰教学相长也。

——《礼记》

我曾出版过《跟老齐学 Python:轻松入门》和《Python 大学实用教程》两本面向初学者的图书,还在不同场合讲授过相关课程,因此,有幸与很多读者和学习者进行交流,收获颇丰。为了将自己的收获与众多学习者分享,于是乎编写本书。

本书名称中的“自学”,就是要跟诸位分享的重要内容。不论是从软件技术的发展还是个人成长、能力构成等各个角度来说,“自学能力”都是必不可少的,这毋庸置疑,也不需要论证。一般地,此能力非“生而知之”,而是“学而知之”的。“学”必须要借助一定的载体,此处我们以 Python 语言作为自学的载体。同时,掌握该编程语言知识和运用技能,以期从事应用相关的开发工作或在其他工作中应用此技能。也有人会将自学过程作为一项“脑力体操”,据说可以防止老年痴呆等症状。

除了强调自学的重要性之外——这是一般资料和一般的作者都能做到的——我在本书中还会将“如何自学”贯穿始终,读者在使用本书“自学”的过程中,在适当的位置就会看到【自学建议】。这些建议均是多年与学习者交流中的收获,结合本书的内容加以提炼总结,分享给现在的读者。前事不忘,后事之师,希望这些学习建议能对读者有帮助。

本书依然是以“零基础”为学习起点,但并不停留在“入门”阶段,结合各个章节的内容,在适当的时候会引导读者“进阶”,夯实基础和开阔视野兼顾,认知和技能得以循环上升。特别是在第 12 章,以示例方式演示了 Python 在几个常见领域的应用,读者不仅能非常直观地感受到 Python 语言的魅力,更能借以权衡自己的擅长,从而确定后续发展方向。

学习编程语言,练习是必不可少的——不是“听会的”,是“练会的”,“非生而知之”的能力必须经过一定程度的刻意训练。为此编选了足够多的练习题,发布在网站上(www.itdiffer.com),读者可以一边自学、一边练习,“学、练”结合,熟能生巧。

在网站 www.itdiffer.com 上发布了关于本书的勘误、修改、源码等相关资料,敬请读者参考。

齐伟

2021年元旦


在线资料

以下目录中,含有部分章节选读内容

目录

  • 第1章 开始自学

    • 1.1 必须自学
    • 1.2 编程语言
      • 1.2.1 机器语言
      • 1.2.2 汇编语言
      • 1.2.3 高级语言
    • 1.3 程序
    • 1.4 Python 语言
    • 1.5 操作系统
      • 1.5.1 Windows
      • 1.5.2 Linux
      • 1.5.3 macOS
    • 1.6 Python 官方网站
      • 1.6.1 About
      • 1.6.2 Downloads
      • 1.6.3 Documentation
    • 1.7 安装 Python
      • 1.7.1 Python 的版本
      • 1.7.2 Windows
      • 1.7.3 Linux
      • 1.7.4 macOS
    • 1.8 IDE 简介

      • 1.8.1 Vim

      • 1.8.2 Emacs

      • 1.8.3 其他

  • 第2章 第一行代码

    • 2.1 Hello World

      • 2.1.1 在交互模式中打印
      • 2.1.2 在程序文件中打印
      • 2.1.3 解释器
    • 2.2 注释

    • 2.3 变量

      • 2.3.1 Python 语言中的变量
      • 2.3.2 变量命名
    • 2.4 初识对象

  • 第3章 数字和计算

    • 3.1 整数和浮点数

    • 3.2 算术运算

    • 3.3 用函数计算

      • 3.3.1 内置函数
      • 3.3.2 标准库的数学模块
    • 3.4 进制转换

      • 3.4.1 转换函数
      • 3.4.2 不是 bug
    • 3.5 复数

    • 3.6 比较

      • 3.6.1 比较运算符
      • 3.6.2 相等和同一
    • 3.7 逻辑运算符

  • 第4章 序列

    • 4.1 字符编码

    • 4.2 字符串

      • 4.2.1 创建字符串
      • 4.2.2 转义符
      • 4.2.3 基本操作
      • 4.2.4 索引
      • 4.2.5 切片
      • 4.2.6 常用方法
      • 4.2.7 格式化输出
    • 4.3 列表

      • 4.3.1 基础知识
      • 4.3.2 常用方法
    • 4.4 元组

  • 第5章 容器

    • 5.1 字典

      • 5.1.1 创建字典
      • 5.1.2 字典的基本操作
      • 5.1.3 字典的方法
    • 5.2 集合

    • 5.3 引用和拷贝

  • 第6章 语句

    • 6.1 简单语句

      • 6.1.1 赋值语句
      • 6.1.2 import 语句
      • 6.1.3 del 语句
    • 6.2 条件语句

    • 6.3 for 循环语句

      • 6.3.1 初步应用
      • 6.3.2 zip() 和 enumerate()
    • 6.4 解析

      • 6.4.1 列表解析
      • 6.4.2 字典和集合解析
    • 6.5 while 循环语句

      • 6.5.1 基本格式
      • 6.5.2 break 和 continue 语句
      • 6.5.3 else 分支
    • 6.6 嵌套循环

    • 6.7 海象运算符

  • 第7章 函数

    • 7.1 定义函数
      • 7.1.1 基本格式
      • 7.1.2 return 语句
      • 7.1.3 参数
      • 7.1.4 不检查类型
    • 7.2 星号的作用

      • 7.2.1 收集参数
      • 7.2.2 解包
    • 7.3 函数是对象
      • 7.3.1 第一类对象
      • 7.3.2 嵌套函数
      • 7.3.3 作用域
      • 7.3.4 装饰器
    • 7.4 函数式编程
      • 7.4.1 lambda 函数
      • 7.4.2 map() 函数
      • 7.4.3 filter() 函数
    • 7.5 递归

  • 第8章 类基础

    • 8.1 面向对象

      • 8.1.1 对象和面向对象
      • 8.1.2 类
    • 8.2 简单的类

      • 8.2.1 创建类
      • 8.2.2 实例
    • 8.3 属性

      • 8.3.1 类属性
      • 8.3.2 实例属性
      • 8.3.3 关于 self
    • 8.4 方法

      • 8.4.1 比较方法和函数
      • 8.4.2 类方法
      • 8.4.3 静态方法
    • 8.5 继承

      • 8.5.1 单继承
      • 8.5.2 多继承
    • 8.6 多态

    • 8.7 封装和私有化

      • 8.7.1 下划线
      • 8.7.2 property 装饰器
    • 8.8 命名空间

  • 第9章 类进阶

    • 9.1 对象类型

      • 9.1.1 定义表示形式
      • 9.1.2 定义运算符
    • 9.2 操控属性

    • 9.3 类列表和类字典对象

    • 9.4 构造方法

      • 9.4.1 理解构造方法
      • 9.4.2 单例
    • 9.5 元类

    • 9.6 迭代器

    • 9.7 生成器

  • 第10章 异常和调试

    • 10.1 错误

    • 10.2 内置异常

      • 10.2.1 try 和 except 分支
      • 10.2.2 else 和 finally 分支
    • 10.3 自定义异常对象

    • 10.4 调试

  • 第11章 模块和包

    • 11.1 模块

    • 11.2 包

    • 11.3 标准库举例

      • 11.3.1 sys
      • 11.3.2 os
      • 11.3.3 json
    • 11.4 第三方包

      • 11.4.1 管理第三方包
      • 11.4.2 发布包
    • 11.5 创建虚拟环境

  • 第12章 应用举例
    • 12.1 编辑文件
      • 12.1.1 基本的读写操作
      • 12.1.2 编辑 Word
      • 12.1.3 编辑 Excel
    • 12.2 存储数据
      • 12.2.1 CSV 文件
      • 12.2.2 SQLite 数据库
    • 12.3 制作网站
      • 12.3.1 创建项目
      • 12.3.2 创建应用
      • 12.3.3 数据模型类
      • 12.3.4 发布文章
      • 12.3.5 文章标题列表
      • 12.3.6 查看文章内容
    • 12.4 科学计算
      • 12.4.1 Jupyter
      • 12.4.2 第三方库
      • 12.4.3 矩阵
      • 12.4.4 解线性方程组
      • 12.4.5 假设检验
    • 12.5. 数据分析
    • 12.6 机器学习
      • 12.6.1 预测船员数量
      • 12.6.2 猫狗二分类
    • 12.7 树莓派开发
      • 12.7.1 树莓派概要
      • 12.7.2 极简案例
作者: 老齐
链接: https://www.itdiffer.com/self-learning.html
来源: 老齐教室
本文原创发布于「老齐教室」,转载请注明出处,谢谢合作!

https://gitee.com/qiwsir/images/raw/master/2021-2-15/1613357594979-1.png

results matching ""

    No results matching ""