杨淑娟《Python开发入门教程》全套教程资源分享

封面图

📖 资源简介

这套《杨淑娟《Python开发入门教程》》的教程资源我整理出来了,分享给需要的朋友。

✨ 资源亮点

  • 内容扎实:100节视频课程,跟着老师一步步操作,比自学摸索快得多。
  • 零基础友好:从环境搭建开始讲起,不需要有任何前置知识,纯新手也能入门。

📚 课程内容

资源清单

类型 数量
视频教程 100 节
压缩文件 0 个
合计 100

这套课程在讲什么

这是一条标准的零基础 Python 入门路线:从装环境、写第一行 print 开始,依次学变量与数据类型、控制流、函数、模块与包、文件操作、异常处理,最后进入面向对象。100 节的体量,足够把语法基础打扎实,为后续 Web 开发、数据分析、爬虫任一方向铺路。


一、为什么第一门语言选 Python

如果你是纯零基础,纠结学哪门语言,答案几乎是 unanimous 的:Python。理由很实在:

  • 语法接近伪代码:去掉了大括号、分号、类型声明,读起来像英语句子。
  • 生态覆盖广:Web(Django/FastAPI)、数据(Pandas/Numpy)、AI(PyTorch)、自动化(Selenium),学完不挑方向。
  • 社区资料多:遇到问题随便一搜都有答案,新手不会卡壳。

适合人群:完全没写过程序的学生、想转行的非技术岗、想做自动化脚本提效的职场人。

二、环境准备:pip 与虚拟环境

正式写代码前先把工具链搭好。Python 自带包管理器 pip,用来安装第三方库:

# 安装一个第三方库

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
pip install requests

# 查看已安装的包

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
pip list

# 导出当前环境依赖(方便迁移/部署)

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
pip freeze > requirements.txt

# 按依赖文件安装

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
pip install -r requirements.txt

强烈建议每个项目都用独立虚拟环境,避免不同项目依赖版本打架:

# 创建虚拟环境(在项目目录下)

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
python -m venv .venv

# Windows 激活

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
.venv\Scripts\activate

# Linux / macOS 激活

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
source .venv/bin/activate

# 激活后终端前面会出现 (.venv),此时 pip install 只装在这个项目里

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)

三、变量与常用数据类型

Python 是动态类型语言,变量不需要声明类型,赋值即定义。内置最常用的 6 种:

# 数字

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
age = 25               # int
price = 19.9           # float

# 字符串

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
name = "Alice"
print(f"你好,{name},明年 {age + 1} 岁")   # f-string 格式化

# 布尔

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
is_student = True
is_vip = False

# 列表 list:有序、可变

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
nums = [1, 2, 3]
nums.append(4)         # [1, 2, 3, 4]
nums[0] = 10           # 修改

# 元组 tuple:有序、不可变

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
point = (3, 4)

# 字典 dict:键值对

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
user = {"name": "Alice", "age": 25}
print(user["name"])    # Alice
user["city"] = "北京"  # 新增

# 集合 set:无序、不重复

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
tags = {"python", "爬虫", "python"}   # 自动去重 -> {"python", "爬虫"}

list vs tuple vs dict vs set 怎么选:

类型 有序 可变 典型场景
list ✅ ✅ 一组同类型数据,需要增删
tuple ✅ ❌ 不可变常量、函数多返回值
dict ❌ ✅ 键值映射、结构化记录
set ❌ ✅ 去重、交集并集

四、运算符与控制流

4.1 常用运算符

# 算术:+ - * / // % **

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
print(7 / 2)    # 3.5   真除法
print(7 // 2)   # 3     整除
print(7 % 2)    # 1     取余
print(2 ** 10)  # 1024  幂

# 比较与逻辑

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
print(3 > 2 and 5 < 10)   # True
print(not False)          # True

4.2 if / for / while

score = 85

# if-elif-else

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
if score >= 90:
    grade = "A"
elif score >= 60:
    grade = "B"
else:
    grade = "C"

# for 遍历

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
for i in range(3):          # 0, 1, 2
    print(i)

names = ["Alice", "Bob"]
for idx, name in enumerate(names):
    print(idx, name)        # 带下标遍历

# while 循环

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
count = 3
while count > 0:
    print(count)
    count -= 1

五、函数:def、参数、返回值、lambda

# 基础定义

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
def add(a, b):
    return a + b

# 默认参数

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
def greet(name, greeting="你好"):
    return f"{greeting}, {name}"

# 可变位置参数 *args、可变关键字参数 **kwargs

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
def func(*args, **kwargs):
    print(args)       # 元组:收集多余位置参数
    print(kwargs)     # 字典:收集多余关键字参数

# 多返回值(其实是元组解包)

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
def min_max(nums):
    return min(nums), max(nums)

lo, hi = min_max([3, 1, 4, 1, 5])

# lambda 匿名函数,常用于排序 key

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
pairs = [("b", 2), ("a", 1)]
pairs.sort(key=lambda x: x[1])   # 按第二项升序

六、模块与包

Python 一个 .py 文件就是一个模块,一个含 __init__.py 的文件夹就是一个包。把代码拆出去复用,别全写在一个文件里:

# 自定义模块 myutils.py

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
def hello():
    print("hi")

# 别的文件里导入

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
import myutils
myutils.hello()

from myutils import hello
hello()

七、文件操作与异常处理

7.1 用 with 安全打开文件

# 写文件

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
with open("note.txt", "w", encoding="utf-8") as f:
    f.write("第一行\n")
    f.write("第二行\n")

# 读文件

![封面图](https://www.suyouke.com/wp-content/uploads/2026/09/doubao_img_007_20260922_113350-29.png)
with open("note.txt", "r", encoding="utf-8") as f:
    content = f.read()          # 一次性读全部
    # for line in f:            # 逐行读,大文件推荐
    #     print(line.strip())

为什么用 with:它会在离开代码块时自动关闭文件,哪怕中间抛异常也不会泄漏句柄,比手动 open/close 安全得多。

7.2 try / except / finally

try:
    num = int("abc")
except ValueError as e:
    print("转换失败:", e)
except Exception:
    print("其他异常")
else:
    print("没出错才执行")
finally:
    print("无论如何都执行(通常用于清理)")

八、面向对象入门

类是把数据和操作数据的方法打包在一起的机制。入门阶段掌握 class、__init__、继承即可:

class Animal:
    def __init__(self, name):       # 构造方法
        self.name = name

    def speak(self):
        print(f"{self.name} 发出声音")

class Dog(Animal):                  # 继承 Animal
    def speak(self):                # 重写父类方法 -> 多态
        print(f"{self.name}: 汪汪汪")

class Cat(Animal):
    def speak(self):
        print(f"{self.name}: 喵喵喵")

for pet in [Dog("旺财"), Cat("咪咪")]:
    pet.speak()     # 同一个调用,不同行为 = 多态

核心概念先记住三个:

  • __init__:构造方法,创建对象时自动调用,用来初始化属性。
  • self:代表实例本身,调用方法时 Python 自动传入,不能省略。
  • 继承/多态:子类复用父类代码并按需重写,这是面向对象的最大价值。

九、学习路线与建议

按这门课 100 节的体量,合理节奏是:

  1. 第 1~20 节:环境 + 输入输出 + 变量 + 运算符,敲熟每一行代码。
  2. 第 21~50 节:控制流 + 字符串/列表/字典常用操作,这部分是日常写代码最高频的。
  3. 第 51~75 节:函数 + 模块 + 文件操作,开始写超过 50 行的小脚本。
  4. 第 76~100 节:异常处理 + 面向对象,为后面 Web/数据分析打基础。

十、新手最常踩的坑 FAQ

Q1:IndentationError 是什么? Python 靠缩进决定代码块,不能乱 tab/空格混着用。统一用 4 个空格即可。

Q2:列表越界 IndexError? list[len(list)] 必然报错,访问前先 len() 检查或用 in 判断。

Q3:== 和 is 有什么区别? == 比值,is 比内存地址。日常判断相等用 ==;判断 None 用 if x is None。

Q4:中文乱码怎么办? open() 一律显式传 encoding="utf-8",Windows 默认 GBK 是乱码元凶。

Q5:装了包还是 ModuleNotFoundError? 九成是没激活虚拟环境,或装在了别的 Python 里。where python / which python 确认当前解释器路径。

十一、写在最后

入门阶段最大的误区是”光看不练”。看完一节就关掉视频自己把代码敲一遍,写错了看报错信息自己定位——这一步比多看十节课都管用。把 100 节全部跟完后,挑一个小项目(比如自动整理下载文件夹的脚本)独立写出来,语法就算真正上手了。

资源获取

💡 建议:尽快保存到本地网盘或电脑,避免分享链接后期失效。


整理不易,如果对你有帮助,欢迎分享给更多需要的朋友。

杨淑娟《Python开发入门教程》全套教程资源分享-速优课
杨淑娟《Python开发入门教程》全套教程资源分享
此内容为付费阅读,请付费后查看
¥2
立即购买
您当前未登录!建议登陆后购买,可保存购买订单
付费阅读
© 版权声明
THE END
喜欢就支持一下吧
点赞8
相关推荐
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容

温馨提示:
1、本内容转载于网络,版权归原作者所有!
2、本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
3、本内容若侵犯到你的版权利益,请联系我们,会尽快给予删除处理!