Skip to content

About

Structured Python practice covering fundamentals, data visualization, web scraping, PySpark, and machine learning.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Data Science Lab

这是一套按章节整理的 Python 学习与实践代码,内容覆盖 Python 基础语法、函数、面向对象、文件操作、数据可视化、爬虫、PySpark 和机器学习等主题。项目以可运行示例为主,适合按目录循序阅读、练习和查阅。

项目概览

  • 18 个主题章节,约 250 个 Python 示例文件
  • 从基础语法逐步过渡到数据处理、爬虫、Spark 和机器学习
  • 每个章节按知识点拆分脚本,文件名对应主要内容
  • 包含数据可视化、Scrapy 项目和数据分析小案例

项目结构

Python-daima-learn/
├── 01Python/                       # 环境验证与 Hello World
├── 02Python语法/                   # 字面量、变量、类型、运算符、字符串、输入输出
├── 03Python判断语句/               # if / elif / else 与判断案例
├── 04Python循环语句/               # while、for、循环嵌套与中断
├── 05Python函数/                   # 函数定义、参数、返回值、作用域
├── 06Python数据容器/               # 列表、元组、字符串、集合、字典
├── 07Python函数进阶/               # 多返回值、可变参数、lambda
├── 08Python文件操作/               # 编码、读取、写入、追加
├── 09Python异常,模块与包/         # 异常处理、模块导入、自定义包
├── 10Python数据可视化/             # JSON 与 pyecharts 基础图表
├── 11Python数据可视化-地图可视化/  # 中国地图与疫情数据地图
├── 12Python数据可视化-动态柱状图/  # 时间线动态柱状图
├── 13Python对象/                   # 类、对象、封装、继承、多态、类型注解
├── 14Python-SQL/                   # SQL 练习目录
├── 15Python-PySpark/               # SparkContext、RDD 转换与行动操作
├── 16Python闭包/                   # 闭包、装饰器、设计模式、线程、Socket、正则
├── 17Python爬虫/                   # urllib、requests、解析、Selenium、Scrapy
├── 18Python机器学习/               # sklearn 分类、回归、特征工程与聚类
├── my_utils/                       # 自定义字符串与文件工具包
├── requirements.txt                # 第三方依赖
└── README.md

章节说明

章节 主要内容
01Python Python 环境验证与最简单脚本
02Python语法 字面量、注释、变量、数据类型、类型转换、运算符、字符串、格式化、input
03Python判断语句 布尔类型、比较运算符、条件分支、分支嵌套与综合案例
04Python循环语句 while、for、循环嵌套、break、continue 与九九乘法表
05Python函数 函数定义、参数传递、返回值、文档字符串、嵌套调用与作用域
06Python数据容器 list、tuple、str、set、dict 的常见操作、切片与遍历
07Python函数进阶 多返回值、多种参数形式、函数作为参数、lambda 匿名函数
08Python文件操作 文件编码、读取、写出、追加写入与文件综合案例
09Python异常,模块与包 异常捕获与传递、模块导入、自定义模块和包、第三方包安装
10Python数据可视化 JSON 数据转换、pyecharts 折线图与柱状图
11Python数据可视化-地图可视化 pyecharts 地图与全国疫情数据展示
12Python数据可视化-动态柱状图 基础柱状图、时间线柱状图与 GDP 动态排名
13Python对象 类与对象、成员方法、构造方法、封装、继承、多态、类型注解
14Python-SQL SQL 练习目录,内容待补充
15Python-PySpark SparkContext、RDD 的 map、flatMap、reduceByKey、filter、sortBy 等操作
16Python闭包 闭包、装饰器、单例模式、工厂模式、多线程、Socket、正则表达式与递归
17Python爬虫 urllib、requests、BeautifulSoup、XPath、jsonpath、Selenium 与 Scrapy
18Python机器学习 sklearn 数据集、分类、回归、特征预处理、特征抽取、KNN、K-means
my_utils 可在其他脚本中导入的字符串和文件操作工具

环境要求

  • Python 3.10 或更高版本
  • Windows 10/11(部分示例使用 Windows 路径和系统功能)
  • 可选:Java 8/11/17(运行 PySpark 示例时需要)
  • 可选:MySQL(运行 PyMySQL 示例时需要)
  • 可选:Chrome 或 Edge 浏览器(运行 Selenium 示例时需要)

大部分基础语法示例只使用 Python 标准库。数据可视化、爬虫、PySpark 和机器学习示例需要安装对应第三方包。

快速开始

git clone https://github.com/znnw/python-data-science-lab.git
cd Python-daima-learn

python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -r requirements.txt

如果 PowerShell 不允许执行激活脚本,可以直接使用虚拟环境中的 Python:

.\.venv\Scripts\python.exe -m pip install -r requirements.txt
.\.venv\Scripts\python.exe ".\02Python语法\01字面量.py"

运行示例

目标 命令
运行基础语法示例 python ".\02Python语法\01字面量.py"
生成 pyecharts 图表 python ".\10Python数据可视化\03pyecharts使用.py"
运行 requests 爬虫 python ".\17Python爬虫\31request的基本使用.py"
运行机器学习示例 python ".\18Python机器学习\01随机森林.py"
运行 PySpark 示例 python ".\15Python-PySpark\01PySpark.py"

数据可视化脚本会在当前目录生成 HTML 文件,使用浏览器打开即可查看图表。

依赖说明

主题 主要依赖
数据处理 numpy、pandas、scipy
数据可视化 matplotlib、pyecharts
网络爬虫 requests、beautifulsoup4、lxml、scrapy、selenium、jsonpath
机器学习 scikit-learn、joblib
大数据 pyspark
数据库 PyMySQL
中文分词 jieba

完整依赖见 requirements.txt。不同示例可以按需安装,不必一次运行全部章节。

敏感配置

涉及登录、视频下载和数据库的示例会从环境变量读取配置,真实值不要写入代码或提交到仓库。运行前可以在当前 PowerShell 会话中设置:

$env:BAIDU_COOKIE = "<your-cookie>"
$env:BAIDU_TRANSLATE_TOKEN = "<your-token>"
$env:WEIBO_COOKIE = "<your-cookie>"
$env:GUSHIWEN_EMAIL = "<your-email>"
$env:GUSHIWEN_PASSWORD = "<your-password>"
$env:DEMO_VIDEO_URL = "<your-video-url>"

$env:DB_HOST = "localhost"
$env:DB_PORT = "3306"
$env:DB_USER = "root"
$env:DB_PASSWORD = "<your-database-password>"
$env:DB_NAME = "spider01"

运行前须知

  1. 修改本地路径
    部分脚本使用 D:\... 等绝对路径。运行前请根据自己的文件位置修改路径,建议优先使用相对路径。

  2. 准备示例数据
    地图可视化、动态柱状图和部分爬虫脚本依赖本地数据文件或目标网页结构,需自行准备数据。

  3. Cookie 和登录状态会过期
    微博、百度翻译等示例涉及 Cookie 或 Token。目标网站更新后请求参数可能失效,示例仅用于学习请求流程。

  4. PySpark 需要额外环境
    运行 Spark 示例前需要安装 Java,并根据本机 Python 位置设置 PYSPARK_PYTHON。部分示例中的 Python 和输出路径需要修改。

  5. Selenium 驱动
    Selenium 脚本需要与浏览器版本匹配的 WebDriver。驱动程序和演示视频不建议提交到 Git 仓库。

  6. 不要提交敏感信息
    不要在代码中提交真实的 Cookie、Token、账号密码、数据库密码或个人信息。建议使用环境变量或本地 .env 文件,并确保 .env 已被 .gitignore 排除。

  7. 14Python-SQL 尚未填充
    当前该目录尚未填充,后续可补充建表、查询和 Python 连接数据库的示例。

许可说明

本项目用于个人学习与技术练习,未添加开源许可证。如需公开复用或分发,请先补充合适的许可证文件。

About

Structured Python practice covering fundamentals, data visualization, web scraping, PySpark, and machine learning.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages