sync from local backup
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
# 第1章 Python简介与安装
|
||||
|
||||
## 1.1 Python 是什么?
|
||||
|
||||
Python 是一种**解释型、面向对象、动态数据类型**的高级程序设计语言。由 Guido van Rossum 于1989年底发明,第一个公开发行版发行于1991年。
|
||||
|
||||
### Python 的特点
|
||||
|
||||
- **简洁优雅**:Python 的语法非常简洁,代码可读性强
|
||||
- **跨平台**:可在 Windows、macOS、Linux 等多种操作系统运行
|
||||
- **丰富的库**:拥有大量标准库和第三方库,覆盖各个领域
|
||||
- **应用广泛**:Web开发、数据分析、人工智能、自动化运维等
|
||||
|
||||
### Python 的应用领域
|
||||
|
||||
| 领域 | 常用框架/库 | 典型应用 |
|
||||
|------|-------------|----------|
|
||||
| Web开发 | Django, Flask | 网站、API后端 |
|
||||
| 数据分析 | Pandas, NumPy | 数据清洗、统计分析 |
|
||||
| 人工智能 | TensorFlow, PyTorch | 机器学习、深度学习 |
|
||||
| 自动化 | Scrapy, Selenium | 爬虫、自动化测试 |
|
||||
| 游戏开发 | Pygame | 2D游戏开发 |
|
||||
|
||||
---
|
||||
|
||||
## 1.2 安装 Python
|
||||
|
||||
### Windows 安装步骤
|
||||
|
||||
1. 访问 [Python官网](https://www.python.org/downloads/)
|
||||
2. 下载 Python 3.10+ 版本的安装包(推荐 3.10 或 3.11)
|
||||
3. 运行安装程序
|
||||
4. **重要**:勾选 **"Add Python to PATH"**
|
||||
5. 点击 "Install Now" 完成安装
|
||||
|
||||
### 验证安装
|
||||
|
||||
打开命令提示符(cmd),输入:
|
||||
|
||||
python --version
|
||||
|
||||
若显示 `Python 3.10.x` 则安装成功。
|
||||
|
||||
---
|
||||
|
||||
## 1.3 第一个 Python 程序
|
||||
|
||||
打开 Python 自带的 **IDLE** 或任意文本编辑器,输入:
|
||||
|
||||
```python
|
||||
print("Hello, Python!")
|
||||
print("世界,你好!")
|
||||
```
|
||||
|
||||
保存为 `hello.py` 文件,然后在命令行中运行:
|
||||
|
||||
python hello.py
|
||||
|
||||
输出结果:
|
||||
|
||||
Hello, Python!
|
||||
世界,你好!
|
||||
|
||||
### 代码说明
|
||||
|
||||
- `print()` 是 Python 的输出函数
|
||||
- 字符串需要用引号包裹,单引号 `'...'` 或双引号 `"..."` 均可
|
||||
- Python 3 默认支持中文(UTF-8编码)
|
||||
|
||||
---
|
||||
|
||||
## 1.4 开发工具推荐
|
||||
|
||||
### IDLE(自带)
|
||||
- Python 自带的简单IDE
|
||||
- 适合初学者入门
|
||||
|
||||
### VS Code(推荐)
|
||||
- 轻量级但功能强大
|
||||
- 安装 Python 插件后支持代码补全、调试等
|
||||
- 下载地址:https://code.visualstudio.com/
|
||||
|
||||
### PyCharm
|
||||
- 专业的 Python IDE
|
||||
- 功能丰富,适合大型项目
|
||||
- 社区版免费
|
||||
|
||||
---
|
||||
|
||||
## 本章练习
|
||||
|
||||
1. 在电脑上安装 Python 3.10+
|
||||
2. 使用 IDLE 或 VS Code 编写并运行 Hello World 程序
|
||||
3. 尝试在 Python 交互式环境中计算 `1 + 1`、`"Hello" + "Python"`
|
||||
|
||||
> 安装 Python 时一定要勾选 "Add Python to PATH",否则需要手动配置环境变量。
|
||||
@@ -0,0 +1,109 @@
|
||||
# 第2章 变量与数据类型
|
||||
|
||||
## 2.1 变量
|
||||
|
||||
在 Python 中,变量不需要声明类型,直接赋值即可创建。
|
||||
|
||||
```python
|
||||
name = "张三"
|
||||
age = 20
|
||||
height = 1.75
|
||||
is_student = True
|
||||
```
|
||||
|
||||
### 变量命名规则
|
||||
|
||||
1. **只能包含**:字母、数字、下划线
|
||||
2. **不能以数字开头**
|
||||
3. **区分大小写**:`Name` 和 `name` 是不同的变量
|
||||
4. **不能使用关键字**:如 `if`、`for`、`class` 等
|
||||
|
||||
### 推荐命名风格
|
||||
|
||||
| 类型 | 示例 | 说明 |
|
||||
|------|------|------|
|
||||
| 普通变量 | `user_name` | 蛇形命名法 |
|
||||
| 常量 | `MAX_SIZE` | 全大写 |
|
||||
|
||||
---
|
||||
|
||||
## 2.2 数字
|
||||
|
||||
### 整数(int)
|
||||
|
||||
```python
|
||||
a = 100
|
||||
b = -50
|
||||
print(type(a)) # <class 'int'>
|
||||
```
|
||||
|
||||
### 浮点数(float)
|
||||
|
||||
```python
|
||||
pi = 3.14159
|
||||
price = 9.9
|
||||
```
|
||||
|
||||
### 数字运算
|
||||
|
||||
```python
|
||||
print(10 + 3) # 加法
|
||||
print(10 - 3) # 减法
|
||||
print(10 * 3) # 乘法
|
||||
print(10 / 3) # 除法
|
||||
print(10 // 3) # 整除
|
||||
print(10 % 3) # 取余
|
||||
print(10 ** 3) # 幂运算
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2.3 字符串
|
||||
|
||||
```python
|
||||
name = "Python"
|
||||
print(len(name)) # 字符串长度
|
||||
print(name[0]) # 索引从0开始
|
||||
print(name[0:3]) # 切片操作
|
||||
print(name.upper()) # 转大写
|
||||
```
|
||||
|
||||
### 字符串格式化
|
||||
|
||||
```python
|
||||
name = "小明"
|
||||
age = 18
|
||||
print(f"我叫{name},今年{age}岁")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2.4 列表
|
||||
|
||||
```python
|
||||
fruits = ["苹果", "香蕉", "橙子"]
|
||||
fruits.append("西瓜")
|
||||
fruits.insert(0, "梨")
|
||||
fruits.pop()
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2.5 字典
|
||||
|
||||
```python
|
||||
student = {
|
||||
"name": "张三",
|
||||
"age": 20,
|
||||
"major": "计算机科学"
|
||||
}
|
||||
print(student["name"])
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 本章练习
|
||||
|
||||
1. 创建一个包含5个元素的列表,并进行增删改操作
|
||||
2. 创建一个学生字典,包含姓名、年龄、成绩等信息
|
||||
3. 编写程序,输入圆的半径,计算圆的面积
|
||||
@@ -0,0 +1,89 @@
|
||||
# 第3章 条件判断与循环
|
||||
|
||||
## 3.1 条件判断
|
||||
|
||||
```python
|
||||
age = 18
|
||||
if age < 18:
|
||||
print("未成年")
|
||||
elif age < 60:
|
||||
print("成年人")
|
||||
else:
|
||||
print("老年人")
|
||||
```
|
||||
|
||||
### 比较运算符
|
||||
|
||||
| 运算符 | 含义 |
|
||||
|--------|------|
|
||||
| `==` | 等于 |
|
||||
| `!=` | 不等于 |
|
||||
| `>` | 大于 |
|
||||
| `<` | 小于 |
|
||||
|
||||
### 逻辑运算符
|
||||
|
||||
```python
|
||||
if age >= 18 and age <= 60:
|
||||
print("劳动年龄")
|
||||
|
||||
if age < 12 or age > 65:
|
||||
print("优惠票")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3.2 for 循环
|
||||
|
||||
```python
|
||||
fruits = ["苹果", "香蕉", "橙子"]
|
||||
for fruit in fruits:
|
||||
print(f"我喜欢吃{fruit}")
|
||||
```
|
||||
|
||||
### range() 函数
|
||||
|
||||
```python
|
||||
for i in range(5):
|
||||
print(i) # 0 1 2 3 4
|
||||
|
||||
for i in range(1, 6):
|
||||
print(i) # 1 2 3 4 5
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3.3 while 循环
|
||||
|
||||
```python
|
||||
total = 0
|
||||
i = 1
|
||||
while i <= 100:
|
||||
total += i
|
||||
i += 1
|
||||
print(total) # 5050
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3.4 break 和 continue
|
||||
|
||||
```python
|
||||
for i in range(10):
|
||||
if i == 5:
|
||||
break
|
||||
print(i) # 0 1 2 3 4
|
||||
|
||||
for i in range(10):
|
||||
if i % 2 == 0:
|
||||
continue
|
||||
print(i) # 1 3 5 7 9
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 本章练习
|
||||
|
||||
1. 编写程序,判断一个年份是否为闰年
|
||||
2. 打印100以内的所有质数
|
||||
3. 编写程序,计算斐波那契数列的前20项
|
||||
@@ -0,0 +1,83 @@
|
||||
# 第4章 函数与模块
|
||||
|
||||
## 4.1 函数定义
|
||||
|
||||
```python
|
||||
def greet(name):
|
||||
"""函数的文档字符串"""
|
||||
return f"你好,{name}!"
|
||||
|
||||
msg = greet("张三")
|
||||
print(msg) # 你好,张三!
|
||||
```
|
||||
|
||||
### 参数类型
|
||||
|
||||
```python
|
||||
# 默认参数
|
||||
def power(base, exponent=2):
|
||||
return base ** exponent
|
||||
|
||||
print(power(3)) # 9
|
||||
print(power(2, 3)) # 8
|
||||
|
||||
# 可变参数
|
||||
def total(*numbers):
|
||||
result = 0
|
||||
for n in numbers:
|
||||
result += n
|
||||
return result
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 4.2 变量作用域
|
||||
|
||||
```python
|
||||
count = 0
|
||||
|
||||
def increment():
|
||||
global count
|
||||
count += 1
|
||||
|
||||
increment()
|
||||
print(count) # 1
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 4.3 匿名函数
|
||||
|
||||
```python
|
||||
square = lambda x: x ** 2
|
||||
print(square(5)) # 25
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 4.4 模块导入
|
||||
|
||||
```python
|
||||
import math
|
||||
print(math.pi)
|
||||
|
||||
import random
|
||||
print(random.randint(1, 100))
|
||||
```
|
||||
|
||||
### 常用标准库
|
||||
|
||||
| 模块 | 用途 |
|
||||
|------|------|
|
||||
| `os` | 操作系统接口 |
|
||||
| `json` | JSON处理 |
|
||||
| `datetime` | 日期时间 |
|
||||
| `random` | 随机数 |
|
||||
|
||||
---
|
||||
|
||||
## 本章练习
|
||||
|
||||
1. 编写一个函数,计算列表中所有元素的平均值
|
||||
2. 编写一个函数,统计字符串中每个字符出现的次数
|
||||
3. 编写一个模块,包含计算圆面积、矩形面积的函数
|
||||
@@ -0,0 +1,99 @@
|
||||
# 第5章 面向对象编程(OOP)
|
||||
|
||||
## 5.1 面向对象概述
|
||||
|
||||
- **类(Class)**:抽象模板,定义属性和方法
|
||||
- **对象(Object)**:类的实例
|
||||
- **封装**:隐藏内部实现细节
|
||||
- **继承**:子类继承父类的属性和方法
|
||||
- **多态**:同一接口,不同实现
|
||||
|
||||
---
|
||||
|
||||
## 5.2 类和对象
|
||||
|
||||
```python
|
||||
class Dog:
|
||||
species = "犬科"
|
||||
|
||||
def __init__(self, name, age):
|
||||
self.name = name
|
||||
self.age = age
|
||||
|
||||
def bark(self):
|
||||
return f"{self.name} 汪汪叫!"
|
||||
|
||||
def __str__(self):
|
||||
return f"{self.name}({self.age}岁)"
|
||||
|
||||
my_dog = Dog("旺财", 3)
|
||||
print(my_dog.bark())
|
||||
print(my_dog)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5.3 封装
|
||||
|
||||
```python
|
||||
class BankAccount:
|
||||
def __init__(self, owner, balance=0):
|
||||
self.owner = owner
|
||||
self.__balance = balance
|
||||
|
||||
def deposit(self, amount):
|
||||
if amount > 0:
|
||||
self.__balance += amount
|
||||
|
||||
def get_balance(self):
|
||||
return self.__balance
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5.4 继承
|
||||
|
||||
```python
|
||||
class Animal:
|
||||
def __init__(self, name):
|
||||
self.name = name
|
||||
|
||||
class Cat(Animal):
|
||||
def speak(self):
|
||||
return f"{self.name} 喵喵叫"
|
||||
|
||||
class Dog(Animal):
|
||||
def speak(self):
|
||||
return f"{self.name} 汪汪叫"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5.5 魔术方法
|
||||
|
||||
```python
|
||||
class Book:
|
||||
def __init__(self, title, author, price):
|
||||
self.title = title
|
||||
self.author = author
|
||||
self.price = price
|
||||
|
||||
def __str__(self):
|
||||
return f"《{self.title}》 - {self.author}"
|
||||
|
||||
def __repr__(self):
|
||||
return f"Book('{self.title}', '{self.author}', {self.price})"
|
||||
|
||||
def __eq__(self, other):
|
||||
if isinstance(other, Book):
|
||||
return self.title == other.title
|
||||
return False
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 本章练习
|
||||
|
||||
1. 设计一个 `Student` 类,包含姓名、年龄、成绩属性
|
||||
2. 使用继承创建 `Animal` 类及其子类
|
||||
3. 实现一个单例模式的配置管理器类
|
||||
@@ -0,0 +1,47 @@
|
||||
# Python 简介与环境搭建
|
||||
|
||||
## 学习目标
|
||||
- 了解 Python 语言特点
|
||||
- 掌握 Python 安装方法
|
||||
- 学会使用 IDLE 和命令行
|
||||
|
||||
## Python 简介
|
||||
|
||||
Python 是一种**解释型、高级、面向对象**的编程语言,由 Guido van Rossum 于 1991 年创建。
|
||||
|
||||
### 为什么选择 Python?
|
||||
|
||||
1. **简单易学** - 语法接近自然语言
|
||||
2. **应用广泛** - Web开发、数据分析、人工智能
|
||||
3. **社区活跃** - 丰富的第三方库
|
||||
4. **跨平台** - Windows、macOS、Linux 通用
|
||||
|
||||
## 安装 Python
|
||||
|
||||
### Windows 安装步骤
|
||||
|
||||
1. 访问 [python.org](https://www.python.org/)
|
||||
2. 下载最新版本 Python 3.x
|
||||
3. 安装时勾选 **"Add Python to PATH"**
|
||||
4. 点击 Install Now
|
||||
|
||||
### 验证安装
|
||||
|
||||
打开命令行输入:
|
||||
|
||||
```bash
|
||||
python --version
|
||||
```
|
||||
|
||||
## 第一个 Python 程序
|
||||
|
||||
```python
|
||||
print("Hello, World!")
|
||||
print("你好,Python!")
|
||||
```
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 安装 Python 环境
|
||||
2. 运行 `print("Hello, World!")`
|
||||
3. 尝试使用不同的 print 输出
|
||||
@@ -0,0 +1,42 @@
|
||||
# 变量与数据类型
|
||||
|
||||
## 学习目标
|
||||
- 理解变量的概念
|
||||
- 掌握 Python 的基本数据类型
|
||||
- 学会使用 type() 函数
|
||||
|
||||
## 什么是变量?
|
||||
|
||||
变量是用于存储数据的容器。Python 中的变量不需要声明类型,直接赋值即可创建。
|
||||
|
||||
```python
|
||||
name = "小明" # 字符串
|
||||
age = 25 # 整数
|
||||
height = 1.75 # 浮点数
|
||||
is_student = True # 布尔值
|
||||
```
|
||||
|
||||
## 基本数据类型
|
||||
|
||||
| 类型 | 说明 | 示例 |
|
||||
|------|------|------|
|
||||
| `int` | 整数 | `42`, `-10` |
|
||||
| `float` | 浮点数 | `3.14`, `-0.5` |
|
||||
| `str` | 字符串 | `"Hello"` |
|
||||
| `bool` | 布尔值 | `True`, `False` |
|
||||
| `list` | 列表 | `[1, 2, 3]` |
|
||||
| `dict` | 字典 | `{"name": "Tom"}` |
|
||||
|
||||
## 类型转换
|
||||
|
||||
```python
|
||||
x = int("10") # 字符串转整数
|
||||
y = str(42) # 整数转字符串
|
||||
z = float("3.14") # 字符串转浮点数
|
||||
```
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 创建不同类型的变量
|
||||
2. 使用 type() 查看变量类型
|
||||
3. 练习类型转换
|
||||
@@ -0,0 +1,51 @@
|
||||
# 条件判断与循环
|
||||
|
||||
## 学习目标
|
||||
- 掌握 if-elif-else 条件判断
|
||||
- 学会使用 for 循环
|
||||
- 掌握 while 循环
|
||||
|
||||
## 条件判断
|
||||
|
||||
```python
|
||||
age = 18
|
||||
if age < 18:
|
||||
print("未成年人")
|
||||
elif age < 60:
|
||||
print("成年人")
|
||||
else:
|
||||
print("老年人")
|
||||
```
|
||||
|
||||
## for 循环
|
||||
|
||||
```python
|
||||
# 遍历列表
|
||||
fruits = ["apple", "banana", "cherry"]
|
||||
for fruit in fruits:
|
||||
print(fruit)
|
||||
|
||||
# 使用 range
|
||||
for i in range(5):
|
||||
print(i) # 输出 0, 1, 2, 3, 4
|
||||
```
|
||||
|
||||
## while 循环
|
||||
|
||||
```python
|
||||
count = 0
|
||||
while count < 5:
|
||||
print(count)
|
||||
count += 1
|
||||
```
|
||||
|
||||
## 循环控制
|
||||
|
||||
- `break` - 跳出循环
|
||||
- `continue` - 跳过当前迭代
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 编写程序判断奇偶数
|
||||
2. 使用循环打印乘法表
|
||||
3. 计算 1 到 100 的和
|
||||
@@ -0,0 +1,45 @@
|
||||
# 函数与模块
|
||||
|
||||
## 学习目标
|
||||
- 理解函数的作用
|
||||
- 掌握函数的定义和调用
|
||||
- 了解模块的使用
|
||||
|
||||
## 定义函数
|
||||
|
||||
```python
|
||||
def greet(name):
|
||||
'''打招呼函数'''
|
||||
return f"你好,{name}!"
|
||||
|
||||
# 调用函数
|
||||
message = greet("小明")
|
||||
print(message) # 输出:你好,小明!
|
||||
```
|
||||
|
||||
## 参数类型
|
||||
|
||||
```python
|
||||
# 默认参数
|
||||
def power(base, exponent=2):
|
||||
return base ** exponent
|
||||
|
||||
print(power(3)) # 9
|
||||
print(power(2, 3)) # 8
|
||||
```
|
||||
|
||||
## 导入模块
|
||||
|
||||
```python
|
||||
import math
|
||||
print(math.sqrt(16)) # 4.0
|
||||
|
||||
from random import randint
|
||||
print(randint(1, 100))
|
||||
```
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 编写计算圆面积的函数
|
||||
2. 创建判断素数的函数
|
||||
3. 使用 math 模块进行数学计算
|
||||
@@ -0,0 +1,41 @@
|
||||
# 列表与字典
|
||||
|
||||
## 学习目标
|
||||
- 掌握列表的操作方法
|
||||
- 理解字典的键值对结构
|
||||
- 学会遍历和推导式
|
||||
|
||||
## 列表 (List)
|
||||
|
||||
```python
|
||||
numbers = [1, 2, 3, 4, 5]
|
||||
numbers.append(6) # 添加元素
|
||||
numbers.pop() # 移除最后一个
|
||||
numbers[0] # 索引访问
|
||||
numbers[1:3] # 切片
|
||||
```
|
||||
|
||||
## 字典 (Dict)
|
||||
|
||||
```python
|
||||
student = {
|
||||
"name": "小明",
|
||||
"age": 20,
|
||||
"grade": "A"
|
||||
}
|
||||
print(student["name"]) # 访问值
|
||||
student["age"] = 21 # 修改值
|
||||
```
|
||||
|
||||
## 列表推导式
|
||||
|
||||
```python
|
||||
squares = [x**2 for x in range(10)]
|
||||
evens = [x for x in range(10) if x % 2 == 0]
|
||||
```
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 创建学生成绩列表并排序
|
||||
2. 使用字典存储书籍信息
|
||||
3. 使用推导式生成斐波那契数列
|
||||
@@ -0,0 +1,43 @@
|
||||
# 面向对象编程
|
||||
|
||||
## 学习目标
|
||||
- 理解类和对象的概念
|
||||
- 掌握类的定义和使用
|
||||
- 了解继承和多态
|
||||
|
||||
## 定义类
|
||||
|
||||
```python
|
||||
class Dog:
|
||||
def __init__(self, name, age):
|
||||
self.name = name
|
||||
self.age = age
|
||||
|
||||
def bark(self):
|
||||
return f"{self.name} 汪汪叫!"
|
||||
|
||||
# 创建对象
|
||||
my_dog = Dog("旺财", 3)
|
||||
print(my_dog.bark())
|
||||
```
|
||||
|
||||
## 继承
|
||||
|
||||
```python
|
||||
class Animal:
|
||||
def __init__(self, name):
|
||||
self.name = name
|
||||
|
||||
def speak(self):
|
||||
pass
|
||||
|
||||
class Cat(Animal):
|
||||
def speak(self):
|
||||
return f"{self.name} 喵喵叫!"
|
||||
```
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 创建一个 BankAccount 类
|
||||
2. 实现存款和取款方法
|
||||
3. 使用继承创建不同类型的账户
|
||||
@@ -0,0 +1,46 @@
|
||||
# 文件操作与异常处理
|
||||
|
||||
## 学习目标
|
||||
- 掌握文件的读写操作
|
||||
- 理解异常处理机制
|
||||
- 学会使用 with 语句
|
||||
|
||||
## 文件读写
|
||||
|
||||
```python
|
||||
# 写入文件
|
||||
with open("test.txt", "w", encoding="utf-8") as f:
|
||||
f.write("Hello World
|
||||
")
|
||||
|
||||
# 读取文件
|
||||
with open("test.txt", "r", encoding="utf-8") as f:
|
||||
content = f.read()
|
||||
print(content)
|
||||
```
|
||||
|
||||
## 异常处理
|
||||
|
||||
```python
|
||||
try:
|
||||
result = 10 / 0
|
||||
except ZeroDivisionError:
|
||||
print("不能除以零!")
|
||||
finally:
|
||||
print("执行完毕")
|
||||
```
|
||||
|
||||
## 常见异常类型
|
||||
|
||||
| 异常类型 | 说明 |
|
||||
|----------|------|
|
||||
| `ValueError` | 值错误 |
|
||||
| `TypeError` | 类型错误 |
|
||||
| `FileNotFoundError` | 文件不存在 |
|
||||
| `ZeroDivisionError` | 除零错误 |
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 读取 CSV 文件并统计数据
|
||||
2. 使用异常处理保证程序健壮性
|
||||
3. 实现日志记录功能
|
||||
@@ -0,0 +1,39 @@
|
||||
# 常用标准库
|
||||
|
||||
## 学习目标
|
||||
- 熟悉 Python 标准库
|
||||
- 掌握 os、datetime、json 等模块
|
||||
- 学会使用第三方库
|
||||
|
||||
## os 模块
|
||||
|
||||
```python
|
||||
import os
|
||||
print(os.getcwd()) # 当前目录
|
||||
os.listdir(".") # 列出文件
|
||||
os.path.exists("test.txt") # 判断文件是否存在
|
||||
```
|
||||
|
||||
## datetime 模块
|
||||
|
||||
```python
|
||||
from datetime import datetime
|
||||
now = datetime.now()
|
||||
print(now.strftime("%Y-%m-%d %H:%M:%S"))
|
||||
```
|
||||
|
||||
## json 模块
|
||||
|
||||
```python
|
||||
import json
|
||||
|
||||
data = {"name": "Tom", "age": 25}
|
||||
json_str = json.dumps(data, ensure_ascii=False)
|
||||
parsed = json.loads(json_str)
|
||||
```
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 批量重命名文件
|
||||
2. 计算日期差值
|
||||
3. 解析 JSON 配置文件
|
||||
@@ -0,0 +1,43 @@
|
||||
# 项目实战:爬虫入门
|
||||
|
||||
## 学习目标
|
||||
- 了解爬虫的基本原理
|
||||
- 掌握 requests 库的使用
|
||||
- 学会使用 BeautifulSoup 解析 HTML
|
||||
|
||||
## 什么是爬虫?
|
||||
|
||||
爬虫是自动获取网页数据的程序,常用于数据采集、监控等场景。
|
||||
|
||||
## requests 库
|
||||
|
||||
```python
|
||||
import requests
|
||||
|
||||
url = "https://api.github.com"
|
||||
response = requests.get(url)
|
||||
print(response.status_code)
|
||||
print(response.json())
|
||||
```
|
||||
|
||||
## BeautifulSoup 解析
|
||||
|
||||
```python
|
||||
from bs4 import BeautifulSoup
|
||||
|
||||
html = "<h1>Hello</h1><p>World</p>"
|
||||
soup = BeautifulSoup(html, "html.parser")
|
||||
print(soup.h1.text) # Hello
|
||||
```
|
||||
|
||||
## 注意事项
|
||||
|
||||
1. 遵守网站的 robots.txt
|
||||
2. 控制请求频率
|
||||
3. 不要爬取敏感数据
|
||||
|
||||
## 动手练习
|
||||
|
||||
1. 爬取天气数据显示在控制台
|
||||
2. 获取豆瓣电影 Top 250
|
||||
3. 制作每日新闻聚合器
|
||||
Reference in New Issue
Block a user