Altered
This commit is contained in:
3
Class/ClassTest/.idea/.gitignore
generated
vendored
Normal file
3
Class/ClassTest/.idea/.gitignore
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
# 默认忽略的文件
|
||||||
|
/shelf/
|
||||||
|
/workspace.xml
|
8
Class/ClassTest/.idea/ClassTest.iml
generated
Normal file
8
Class/ClassTest/.idea/ClassTest.iml
generated
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module type="PYTHON_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager">
|
||||||
|
<content url="file://$MODULE_DIR$" />
|
||||||
|
<orderEntry type="jdk" jdkName="Python 3.13" jdkType="Python SDK" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
</component>
|
||||||
|
</module>
|
6
Class/ClassTest/.idea/inspectionProfiles/profiles_settings.xml
generated
Normal file
6
Class/ClassTest/.idea/inspectionProfiles/profiles_settings.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<component name="InspectionProjectProfileManager">
|
||||||
|
<settings>
|
||||||
|
<option name="USE_PROJECT_PROFILE" value="false" />
|
||||||
|
<version value="1.0" />
|
||||||
|
</settings>
|
||||||
|
</component>
|
7
Class/ClassTest/.idea/misc.xml
generated
Normal file
7
Class/ClassTest/.idea/misc.xml
generated
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="Black">
|
||||||
|
<option name="sdkName" value="Python 3.13" />
|
||||||
|
</component>
|
||||||
|
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.13" project-jdk-type="Python SDK" />
|
||||||
|
</project>
|
8
Class/ClassTest/.idea/modules.xml
generated
Normal file
8
Class/ClassTest/.idea/modules.xml
generated
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/.idea/ClassTest.iml" filepath="$PROJECT_DIR$/.idea/ClassTest.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
6
Class/ClassTest/.idea/vcs.xml
generated
Normal file
6
Class/ClassTest/.idea/vcs.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="$PROJECT_DIR$/../.." vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
5
Class/ClassTest/main.py
Normal file
5
Class/ClassTest/main.py
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
import os
|
||||||
|
|
||||||
|
class Test:
|
||||||
|
def __init__(self):
|
||||||
|
|
244
Class/readme.md
Normal file
244
Class/readme.md
Normal file
@@ -0,0 +1,244 @@
|
|||||||
|
好的,我来帮你系统梳理 **Python 类(class)** 的全部核心知识点,包括语法、属性、方法、继承、特殊方法等,适合作为 **Python 类的完整参考手册**。我会尽量详尽、条理清晰。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Python 类(class)完整知识总结
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1️⃣ 基础语法
|
||||||
|
|
||||||
|
```python
|
||||||
|
class ClassName(BaseClass):
|
||||||
|
"""类的文档字符串"""
|
||||||
|
|
||||||
|
class_attribute = 0 # 类属性
|
||||||
|
|
||||||
|
def __init__(self, arg1, arg2):
|
||||||
|
self.arg1 = arg1 # 实例属性
|
||||||
|
self.arg2 = arg2
|
||||||
|
|
||||||
|
def method(self):
|
||||||
|
print(self.arg1, self.arg2)
|
||||||
|
```
|
||||||
|
|
||||||
|
* `class ClassName:` → 定义类
|
||||||
|
* `BaseClass` → 可选,继承自父类
|
||||||
|
* `__init__` → 构造函数(实例化时自动调用)
|
||||||
|
* `self` → 指向实例本身,必须作为实例方法的第一个参数
|
||||||
|
* **类属性** → 所有实例共享
|
||||||
|
* **实例属性** → 每个实例独立
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2️⃣ 实例化和使用
|
||||||
|
|
||||||
|
```python
|
||||||
|
obj = ClassName(10, 20)
|
||||||
|
obj.method() # 调用实例方法
|
||||||
|
print(obj.arg1) # 访问实例属性
|
||||||
|
print(ClassName.class_attribute) # 访问类属性
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3️⃣ 类属性 vs 实例属性
|
||||||
|
|
||||||
|
```python
|
||||||
|
class Example:
|
||||||
|
class_var = 100 # 类属性
|
||||||
|
|
||||||
|
def __init__(self, x):
|
||||||
|
self.instance_var = x # 实例属性
|
||||||
|
|
||||||
|
e1 = Example(1)
|
||||||
|
e2 = Example(2)
|
||||||
|
|
||||||
|
print(e1.class_var, e2.class_var) # 100 100
|
||||||
|
print(e1.instance_var, e2.instance_var) # 1 2
|
||||||
|
```
|
||||||
|
|
||||||
|
* 修改类属性:`Example.class_var = 200`
|
||||||
|
* 修改实例属性:`e1.instance_var = 10`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4️⃣ 方法类型
|
||||||
|
|
||||||
|
| 方法类型 | 装饰器 | 特点 |
|
||||||
|
| ---- | --------------- | ----------------------- |
|
||||||
|
| 实例方法 | 无或 `@property` | 第一个参数是 `self`,只能通过实例调用 |
|
||||||
|
| 类方法 | `@classmethod` | 第一个参数是 `cls`,可以通过类或实例调用 |
|
||||||
|
| 静态方法 | `@staticmethod` | 无默认参数,可通过类或实例调用 |
|
||||||
|
|
||||||
|
```python
|
||||||
|
class Demo:
|
||||||
|
class_var = 0
|
||||||
|
|
||||||
|
def instance_method(self):
|
||||||
|
print("实例方法", self.class_var)
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def class_method(cls):
|
||||||
|
print("类方法", cls.class_var)
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def static_method():
|
||||||
|
print("静态方法")
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 5️⃣ 继承与多态
|
||||||
|
|
||||||
|
```python
|
||||||
|
class Parent:
|
||||||
|
def greet(self):
|
||||||
|
print("Hello from Parent")
|
||||||
|
|
||||||
|
class Child(Parent):
|
||||||
|
def greet(self):
|
||||||
|
print("Hello from Child")
|
||||||
|
|
||||||
|
c = Child()
|
||||||
|
c.greet() # 输出 Child 的 greet → 多态
|
||||||
|
```
|
||||||
|
|
||||||
|
* Python 支持 **单继承** 和 **多继承**
|
||||||
|
* `super()` 调用父类方法:
|
||||||
|
|
||||||
|
```python
|
||||||
|
class Child(Parent):
|
||||||
|
def greet(self):
|
||||||
|
super().greet() # 调用父类方法
|
||||||
|
print("Hello from Child")
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 6️⃣ 特殊方法(魔法方法)
|
||||||
|
|
||||||
|
| 方法 | 功能 |
|
||||||
|
| ----------------------------------- | ------------------- |
|
||||||
|
| `__init__(self, ...)` | 构造函数 |
|
||||||
|
| `__str__(self)` | `print(obj)` 输出 |
|
||||||
|
| `__repr__(self)` | 交互式显示或 `repr(obj)` |
|
||||||
|
| `__len__(self)` | `len(obj)` |
|
||||||
|
| `__getitem__(self, key)` | 支持索引访问 `obj[key]` |
|
||||||
|
| `__setitem__(self, key, value)` | 支持索引赋值 |
|
||||||
|
| `__delitem__(self, key)` | 支持删除 `del obj[key]` |
|
||||||
|
| `__iter__(self)` / `__next__(self)` | 可迭代对象 |
|
||||||
|
| `__eq__`, `__lt__`, `__gt__`, ... | 支持比较运算符 |
|
||||||
|
| `__add__`, `__sub__`, ... | 支持运算符重载 |
|
||||||
|
|
||||||
|
示例:
|
||||||
|
|
||||||
|
```python
|
||||||
|
class Vector:
|
||||||
|
def __init__(self, x, y):
|
||||||
|
self.x = x
|
||||||
|
self.y = y
|
||||||
|
|
||||||
|
def __add__(self, other):
|
||||||
|
return Vector(self.x + other.x, self.y + other.y)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f"Vector({self.x}, {self.y})"
|
||||||
|
|
||||||
|
v1 = Vector(1,2)
|
||||||
|
v2 = Vector(3,4)
|
||||||
|
print(v1 + v2) # Vector(4,6)
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 7️⃣ 属性访问控制
|
||||||
|
|
||||||
|
Python 没有严格私有化,但通过命名约定控制访问:
|
||||||
|
|
||||||
|
* 公有属性:`self.x` → 可在类外访问
|
||||||
|
* 受保护属性:`self._x` → 建议类外少用
|
||||||
|
* 私有属性:`self.__x` → 名字改写,类外不易访问
|
||||||
|
|
||||||
|
```python
|
||||||
|
class Test:
|
||||||
|
def __init__(self):
|
||||||
|
self.public = 1
|
||||||
|
self._protected = 2
|
||||||
|
self.__private = 3
|
||||||
|
|
||||||
|
t = Test()
|
||||||
|
print(t.public) # 1
|
||||||
|
print(t._protected) # 2
|
||||||
|
print(t._Test__private) # 3 → 私有属性访问技巧
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8️⃣ 属性装饰器(getter/setter)
|
||||||
|
|
||||||
|
```python
|
||||||
|
class Person:
|
||||||
|
def __init__(self, name):
|
||||||
|
self._name = name
|
||||||
|
|
||||||
|
@property
|
||||||
|
def name(self): # getter
|
||||||
|
return self._name
|
||||||
|
|
||||||
|
@name.setter
|
||||||
|
def name(self, value): # setter
|
||||||
|
self._name = value
|
||||||
|
|
||||||
|
p = Person("Alice")
|
||||||
|
print(p.name)
|
||||||
|
p.name = "Bob"
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 9️⃣ 类方法总结
|
||||||
|
|
||||||
|
* `self` → 实例方法,访问实例属性
|
||||||
|
* `cls` → 类方法,访问类属性
|
||||||
|
* 静态方法 → 无默认参数,可独立使用
|
||||||
|
* `@property` → 用方法访问属性,控制读写
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 10️⃣ 进阶概念
|
||||||
|
|
||||||
|
* **多继承 & MRO(方法解析顺序)**
|
||||||
|
|
||||||
|
* Python 按 **C3线性化算法** 决定方法调用顺序
|
||||||
|
* **组合 vs 继承**
|
||||||
|
|
||||||
|
* 类可以包含其他类实例,实现复合功能
|
||||||
|
* **抽象类 & 接口**
|
||||||
|
|
||||||
|
```python
|
||||||
|
from abc import ABC, abstractmethod
|
||||||
|
|
||||||
|
class Shape(ABC):
|
||||||
|
@abstractmethod
|
||||||
|
def area(self):
|
||||||
|
pass
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 11️⃣ Python 类的总结
|
||||||
|
|
||||||
|
1. **定义与实例化** → class + **init** + self
|
||||||
|
2. **属性** → 类属性 vs 实例属性
|
||||||
|
3. **方法** → 实例方法 / 类方法 / 静态方法
|
||||||
|
4. **继承与多态** → super() 调用父类方法
|
||||||
|
5. **特殊方法** → 魔法方法,实现运算符、索引、迭代等
|
||||||
|
6. **访问控制** → 公有 / 受保护 / 私有
|
||||||
|
7. **装饰器** → @property 控制访问
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
我可以帮你画一张 **Python 类知识全景图**,把 **类结构、属性、方法、继承、魔法方法、访问控制、装饰器** 全部整理成一张图,非常直观易记。
|
||||||
|
|
||||||
|
你希望我画吗?
|
166
Packages/StandardLibrary/readme.md
Normal file
166
Packages/StandardLibrary/readme.md
Normal file
@@ -0,0 +1,166 @@
|
|||||||
|
好的,我来帮你整理一份 **Python 标准库(Standard Library)详细概览**,按照用途分类,包含核心模块、功能和简单示例,方便快速了解。
|
||||||
|
|
||||||
|
Python 标准库是 **Python 自带的模块集合**,无需额外安装即可使用。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 1️⃣ 操作系统与文件
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ---------- | ---------------- | ------------------------------------------- |
|
||||||
|
| `os` | 系统操作、文件路径、环境变量 | `import os; os.listdir('.')` |
|
||||||
|
| `sys` | Python 解释器相关信息 | `import sys; sys.argv` |
|
||||||
|
| `shutil` | 高级文件操作(复制、移动、删除) | `import shutil; shutil.copy('a','b')` |
|
||||||
|
| `pathlib` | 面向对象的路径操作 | `from pathlib import Path; p = Path('.')` |
|
||||||
|
| `tempfile` | 临时文件和目录 | `import tempfile; tempfile.TemporaryFile()` |
|
||||||
|
| `glob` | 文件通配符匹配 | `import glob; glob.glob('*.py')` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 2️⃣ 数据类型与容器
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ------------- | --------------------------------------------------------- | --------------------------------------------------- |
|
||||||
|
| `collections` | 高级容器类型,如 `Counter`, `deque`, `OrderedDict`, `defaultdict` | `from collections import Counter; Counter([1,2,2])` |
|
||||||
|
| `array` | 高效数值数组 | `from array import array; a = array('i',[1,2,3])` |
|
||||||
|
| `heapq` | 堆操作 | `import heapq; heapq.heappush(heap, x)` |
|
||||||
|
| `bisect` | 有序列表插入和查找 | `import bisect; bisect.insort(lst, 5)` |
|
||||||
|
| `queue` | 线程安全队列 | `from queue import Queue; q = Queue()` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 3️⃣ 数学与科学计算
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ------------ | ------- | --------------------------------------------------------------- |
|
||||||
|
| `math` | 数学函数 | `import math; math.sqrt(16)` |
|
||||||
|
| `cmath` | 复数数学函数 | `import cmath; cmath.sqrt(-1)` |
|
||||||
|
| `decimal` | 高精度浮点运算 | `from decimal import Decimal; Decimal('1.1') + Decimal('2.2')` |
|
||||||
|
| `fractions` | 分数运算 | `from fractions import Fraction; Fraction(1,3) + Fraction(2,3)` |
|
||||||
|
| `random` | 随机数生成 | `import random; random.randint(1,10)` |
|
||||||
|
| `statistics` | 基本统计函数 | `import statistics; statistics.mean([1,2,3])` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 4️⃣ 文本处理
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ------------- | ------------ | ------------------------------------------------------- |
|
||||||
|
| `re` | 正则表达式 | `import re; re.findall(r'\d+', 'abc123')` |
|
||||||
|
| `string` | 字符串常量与模板 | `import string; string.ascii_letters` |
|
||||||
|
| `textwrap` | 文本换行与缩进 | `import textwrap; textwrap.fill("long text", width=20)` |
|
||||||
|
| `unicodedata` | Unicode 字符属性 | `import unicodedata; unicodedata.name('中')` |
|
||||||
|
| `codecs` | 编码解码 | `import codecs; codecs.encode("abc","utf-8")` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 5️⃣ 数据持久化与格式
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ----------------------- | ------------- | ------------------------------------------------------- |
|
||||||
|
| `json` | JSON 序列化与反序列化 | `import json; json.loads('{"a":1}')` |
|
||||||
|
| `pickle` | Python 对象序列化 | `import pickle; pickle.dump(obj,f)` |
|
||||||
|
| `shelve` | 类似字典的文件存储 | `import shelve; db = shelve.open('data')` |
|
||||||
|
| `csv` | CSV 文件读写 | `import csv; reader = csv.reader(f)` |
|
||||||
|
| `configparser` | 配置文件解析 | `import configparser; config.read('config.ini')` |
|
||||||
|
| `xml.etree.ElementTree` | XML 解析 | `import xml.etree.ElementTree as ET; ET.parse('a.xml')` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 6️⃣ 日期与时间
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ---------- | ------- | ----------------------------------------------- |
|
||||||
|
| `datetime` | 日期和时间处理 | `from datetime import datetime; datetime.now()` |
|
||||||
|
| `time` | 时间戳、延时 | `import time; time.sleep(1)` |
|
||||||
|
| `calendar` | 日历相关 | `import calendar; calendar.month(2025,9)` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 7️⃣ 网络与互联网
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ------------- | --------- | ---------------------------------------------------------------------- |
|
||||||
|
| `socket` | 网络通信 | `import socket; s = socket.socket()` |
|
||||||
|
| `http.client` | HTTP 客户端 | `import http.client; conn = http.client.HTTPConnection('example.com')` |
|
||||||
|
| `urllib` | URL 处理、请求 | `from urllib import request; request.urlopen('http://example.com')` |
|
||||||
|
| `ftplib` | FTP 协议 | `from ftplib import FTP; ftp = FTP('host')` |
|
||||||
|
| `smtplib` | 发送邮件 | `import smtplib; server = smtplib.SMTP('smtp.example.com')` |
|
||||||
|
| `email` | 邮件解析和构建 | `from email.mime.text import MIMEText` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 8️⃣ 并发与多线程
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| -------------------- | ------ | --------------------------------------------------------------- |
|
||||||
|
| `threading` | 多线程 | `import threading; t = threading.Thread(target=func)` |
|
||||||
|
| `multiprocessing` | 多进程 | `from multiprocessing import Process; p = Process(target=func)` |
|
||||||
|
| `asyncio` | 异步编程 | `import asyncio; asyncio.run(main())` |
|
||||||
|
| `concurrent.futures` | 线程/进程池 | `from concurrent.futures import ThreadPoolExecutor` |
|
||||||
|
| `queue` | 线程安全队列 | `from queue import Queue` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 9️⃣ 调试与开发工具
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ----------- | ------ | ------------------------------------------ |
|
||||||
|
| `logging` | 日志记录 | `import logging; logging.info("msg")` |
|
||||||
|
| `pdb` | 调试 | `import pdb; pdb.set_trace()` |
|
||||||
|
| `traceback` | 异常堆栈信息 | `import traceback; traceback.format_exc()` |
|
||||||
|
| `warnings` | 警告控制 | `import warnings; warnings.warn("msg")` |
|
||||||
|
| `inspect` | 查看对象信息 | `import inspect; inspect.getmembers(obj)` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 10️⃣ 压缩与归档
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| --------- | -------- | ------------------------------------------ |
|
||||||
|
| `zipfile` | ZIP 文件读写 | `import zipfile; zipfile.ZipFile('a.zip')` |
|
||||||
|
| `tarfile` | TAR 文件读写 | `import tarfile; tarfile.open('a.tar.gz')` |
|
||||||
|
| `gzip` | Gzip 压缩 | `import gzip; gzip.open('a.gz','rb')` |
|
||||||
|
| `bz2` | bzip2 压缩 | `import bz2` |
|
||||||
|
| `lzma` | lzma 压缩 | `import lzma` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 11️⃣ 其他常用
|
||||||
|
|
||||||
|
| 模块 | 功能 | 示例 |
|
||||||
|
| ----------- | -------- | ----------------------------------------------------- |
|
||||||
|
| `uuid` | UUID 生成 | `import uuid; uuid.uuid4()` |
|
||||||
|
| `hashlib` | 哈希算法 | `import hashlib; hashlib.md5(b'abc').hexdigest()` |
|
||||||
|
| `hmac` | HMAC 校验 | `import hmac` |
|
||||||
|
| `enum` | 枚举类型 | `from enum import Enum` |
|
||||||
|
| `functools` | 函数工具,如缓存 | `from functools import lru_cache` |
|
||||||
|
| `itertools` | 高级迭代工具 | `import itertools; itertools.combinations([1,2,3],2)` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔹 总结
|
||||||
|
|
||||||
|
Python 标准库非常丰富,可以大体分类为:
|
||||||
|
|
||||||
|
1. **系统与文件** → os, sys, pathlib, shutil, tempfile
|
||||||
|
2. **数据结构与容器** → collections, array, heapq, queue
|
||||||
|
3. **数学与统计** → math, cmath, decimal, fractions, random, statistics
|
||||||
|
4. **文本处理** → re, string, textwrap, codecs, unicodedata
|
||||||
|
5. **数据存储与格式** → json, pickle, shelve, csv, configparser, xml
|
||||||
|
6. **日期与时间** → datetime, time, calendar
|
||||||
|
7. **网络与互联网** → socket, urllib, http.client, ftplib, smtplib, email
|
||||||
|
8. **并发与异步** → threading, multiprocessing, asyncio, concurrent.futures
|
||||||
|
9. **调试与开发** → logging, pdb, traceback, inspect
|
||||||
|
10. **压缩与归档** → zipfile, tarfile, gzip, bz2, lzma
|
||||||
|
11. **其他工具** → uuid, hashlib, hmac, enum, functools, itertools
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
💡 提示:Python 官方文档有 **完整标准库参考**,可直接查阅每个模块的 API。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
我可以帮你画一张 **Python 标准库分类全景图**,把模块按功能归类,直观展示,非常适合学习和查阅。
|
||||||
|
|
||||||
|
你希望我画吗?
|
111
Packages/readme.md
Normal file
111
Packages/readme.md
Normal file
@@ -0,0 +1,111 @@
|
|||||||
|
好的,我给你整理一份 **Python 常用第三方包和标准库简介**,按用途分类,包含功能和简单示例,方便你快速了解和查阅。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 1️⃣ 科学计算与数据分析
|
||||||
|
|
||||||
|
| 包名 | 功能 | 示例 |
|
||||||
|
| -------------- | -------------------- | ----------------------------------------------------- |
|
||||||
|
| **NumPy** | 高性能数组运算、矩阵运算 | `import numpy as np; a = np.array([1,2,3])` |
|
||||||
|
| **Pandas** | 数据处理与分析,DataFrame 操作 | `import pandas as pd; df = pd.DataFrame({'a':[1,2]})` |
|
||||||
|
| **SciPy** | 科学计算函数库,线性代数、优化、信号处理 | `from scipy import optimize; optimize.minimize(...)` |
|
||||||
|
| **Matplotlib** | 数据可视化,绘图 | `import matplotlib.pyplot as plt; plt.plot([1,2,3])` |
|
||||||
|
| **Seaborn** | 高级可视化,基于 Matplotlib | `import seaborn as sns; sns.heatmap(data)` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 2️⃣ 机器学习与深度学习
|
||||||
|
|
||||||
|
| 包名 | 功能 | 示例 |
|
||||||
|
| ---------------------- | ------------------ | ----------------------------------------------------- |
|
||||||
|
| **scikit-learn** | 经典机器学习算法 | `from sklearn.ensemble import RandomForestClassifier` |
|
||||||
|
| **TensorFlow** | 深度学习框架 | `import tensorflow as tf; tf.constant([1,2])` |
|
||||||
|
| **PyTorch** | 深度学习框架,动态图 | `import torch; x = torch.tensor([1,2])` |
|
||||||
|
| **Keras** | 高级神经网络接口(常与 TF 搭配) | `from keras.models import Sequential` |
|
||||||
|
| **XGBoost / LightGBM** | 提升树算法,常用于 Kaggle | `import xgboost as xgb` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 3️⃣ 数据获取与处理
|
||||||
|
|
||||||
|
| 包名 | 功能 | 示例 |
|
||||||
|
| ----------------- | ---------------- | ------------------------------------------------------------------------- |
|
||||||
|
| **requests** | HTTP 请求 | `import requests; r = requests.get(url)` |
|
||||||
|
| **BeautifulSoup** | HTML / XML 解析 | `from bs4 import BeautifulSoup; soup = BeautifulSoup(html,'html.parser')` |
|
||||||
|
| **lxml** | 高效 HTML / XML 解析 | `from lxml import etree` |
|
||||||
|
| **json** | JSON 数据处理(标准库) | `import json; data = json.loads(json_str)` |
|
||||||
|
| **csv** | CSV 文件操作(标准库) | `import csv; reader = csv.reader(f)` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 4️⃣ 系统与文件操作
|
||||||
|
|
||||||
|
| 包名 | 功能 | 示例 |
|
||||||
|
| -------------- | ------------------ | ------------------------------------------- |
|
||||||
|
| **os** | 系统操作、文件路径(标准库) | `import os; os.listdir('.')` |
|
||||||
|
| **sys** | Python 解释器相关操作 | `import sys; sys.argv` |
|
||||||
|
| **shutil** | 高级文件操作,如复制、移动 | `import shutil; shutil.copy('a','b')` |
|
||||||
|
| **pathlib** | 面向对象的路径操作(Python3) | `from pathlib import Path; p = Path('.')` |
|
||||||
|
| **subprocess** | 执行外部命令 | `import subprocess; subprocess.run(['ls'])` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 5️⃣ Web 开发
|
||||||
|
|
||||||
|
| 包名 | 功能 | 示例 |
|
||||||
|
| ------------ | ---------- | ------------------------------------------------ |
|
||||||
|
| **Flask** | 轻量 Web 框架 | `from flask import Flask; app = Flask(__name__)` |
|
||||||
|
| **Django** | 全功能 Web 框架 | `django-admin startproject mysite` |
|
||||||
|
| **FastAPI** | 高性能 API 框架 | `from fastapi import FastAPI; app = FastAPI()` |
|
||||||
|
| **requests** | HTTP 客户端 | 同上 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 6️⃣ 图像与多媒体处理
|
||||||
|
|
||||||
|
| 包名 | 功能 | 示例 |
|
||||||
|
| --------------------- | ------ | -------------------------------------------------- |
|
||||||
|
| **Pillow** | 图像处理 | `from PIL import Image; img = Image.open('a.jpg')` |
|
||||||
|
| **OpenCV (cv2)** | 计算机视觉 | `import cv2; img = cv2.imread('a.jpg')` |
|
||||||
|
| **matplotlib.pyplot** | 简单图像显示 | `plt.imshow(img)` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 7️⃣ 常用工具库
|
||||||
|
|
||||||
|
| 包名 | 功能 | 示例 |
|
||||||
|
| ------------- | -------- | ----------------------------------------------------- |
|
||||||
|
| **re** | 正则表达式 | `import re; re.findall(r'\d+', 'abc123')` |
|
||||||
|
| **datetime** | 日期与时间处理 | `import datetime; datetime.datetime.now()` |
|
||||||
|
| **random** | 随机数 | `import random; random.randint(1,10)` |
|
||||||
|
| **itertools** | 高级迭代工具 | `import itertools; itertools.combinations([1,2,3],2)` |
|
||||||
|
| **functools** | 函数工具,如缓存 | `from functools import lru_cache` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 8️⃣ 数据序列化与持久化
|
||||||
|
|
||||||
|
| 包名 | 功能 | 示例 |
|
||||||
|
| ---------- | ------------ | ----------------------------------------- |
|
||||||
|
| **pickle** | Python 对象序列化 | `import pickle; pickle.dump(obj,f)` |
|
||||||
|
| **shelve** | 类似字典的简单数据库 | `import shelve; db = shelve.open('data')` |
|
||||||
|
| **json** | JSON 序列化 | 同上 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 🔹 总结
|
||||||
|
|
||||||
|
1. **科学计算** → NumPy, Pandas, SciPy, Matplotlib, Seaborn
|
||||||
|
2. **机器学习/深度学习** → scikit-learn, TensorFlow, PyTorch, Keras, XGBoost
|
||||||
|
3. **数据获取** → requests, BeautifulSoup, lxml, json, csv
|
||||||
|
4. **系统/文件操作** → os, sys, shutil, pathlib, subprocess
|
||||||
|
5. **Web 开发** → Flask, Django, FastAPI
|
||||||
|
6. **图像处理** → Pillow, OpenCV
|
||||||
|
7. **工具函数** → re, datetime, random, itertools, functools
|
||||||
|
8. **数据持久化** → pickle, shelve, json
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
我可以帮你画一张 **Python 常用包分类全景图**,把这些包按用途分层,直观展示,方便快速记忆。
|
||||||
|
|
||||||
|
你希望我画吗?
|
Reference in New Issue
Block a user