Python Education Tools for Teaching
Project description
Python Education Tools (PET)
Author: Prof. Luqun Li (李鲁群) Email: liluqun@gmail.com | success@shnu.edu.cn GitHub: https://github.com/liluqun
-
什么是 PET 工具包?
- Python Education Tools (PET) 是专为教育和数据分析设计的工具包,旨在简化教学过程,提供数据生成、教材管理、系统信息提取、音频处理等多种功能。
-
PET 工具包的目标:
- 提供 简化的数据生成 和 样本数据创建功能,便于教学和实验。
- 提供 教材案例下载,让学生能够快速获取教材中的代码和习题。
- 提供 系统信息提取功能,如进程信息、目录结构等,帮助学生更好地理解系统资源。
- 提供 音频处理功能,通过文本转语音功能,增强教学互动。
- 统计分析与数据可视化功能,帮助学生进行数据分析。
模块安装
-
检查 Python 版本:
-
打开终端或命令提示符,输入以下命令:
python --version -
确保版本为 Python 3.8 或更高。
-
-
安装 PET 工具包:
-
输入以下命令安装工具包:
pip install -U python-education-tools
-
-
安装可选依赖:
-
音频处理功能:
pip install -U python-education-tools[audio]
-
数据可视化与统计分析功能:
pip install -U python-education-tools[viz]
-
Web 抓取与处理功能:
pip install -U python-education-tools[web]
-
Python Education Tools (PET) 是一个专为教育与数据分析设计的工具包,旨在简化教学、实验和数据处理过程。该工具包提供了多种教学相关功能,包括数据生成、系统信息提取、教材案例下载和音频处理等,旨在帮助学生和教师更好地进行Python学习和数据分析。
PET 工具包功能
1. 编程之道
PET 工具包通过一行 Python 代码,引用古文阐述编程之道,帮助学生理解编程哲学。
import pet.this
此模块从中国传统文化角度,引用“心、术、道”三个层次,带领大家体会编程的道理。通过编程之道的学习,帮助学生在编程实践中不断提升技术与思维方式。
2. 教材案例下载
PET 提供了教材配套的代码案例,学生可以通过以下命令快速下载教材中的代码:
import pet.textbook1.codes
或者在windows终端下输入pet,如:c:>pet
- 执行该命令后,教材中的代码案例将自动下载到 Windows 用户桌面,目录为 "Python与数据分析及可视化教学案例"。
- 快速下载功能帮助学生能够在第一时间访问并使用教学案例,提升学习效率。
3. 数据集加载与数据生成
(1) 快速装载数据集
PET 提供了多种数据集,学生可以通过以下代码加载指定的数据集:
from pet.datasets import factory
factory.load_data(key='iris')
- 可选数据集:
['中国大学', '学科专业分类', '上海师范大学课程表', 'iris', '道德经.txt', '双色球', '2023年上海市二级程序员大赛名单']等。 - 通过
load_data(),你可以快速加载数据集并返回 DataFrame 或文本文件。
(2) 快速生成自定义数据集
PET 还支持根据自定义模板生成数据。通过以下代码可以生成干净的样本数据或带噪声的数据:
from pet.datasets import factory
# 生成干净的 Series 数据
df = factory.gen_sample_series()
# 生成带噪声的 DataFrame 数据
df = factory.gen_sample_dataframe(sample_order=sample_order, number=40, dst='generated_sample.xlsx', noise=0.1)
- 用户可以按照如下规则自行编写任意格式
sample_order。该数据结构是一个字典,定义了生成数据的规则,字段包括学号、性别、成绩等。
格式为:{XX.YY:[ZZ...],
其中:XX为列名称;YY为列的数据类型,ZZ为列的数据;可选数据类型如下:
- .iid: 代表产生整数学号(字段名称.类型)
- .i:代表整数
- .n: 代表名字
- .c: 代表类别
- .dt: 代表日期时间
- .f: 代表浮点数
如:'考号.i': [151000, 789000],代表:列名为:考号,数据类型为整型,[151000, 789000]为数据范围
示例:sample_order 字典格式
sample_order = {
'学号.iid': 220151000, # 学号,生成整数
'考号.i': [151000, 789000], # 考号,整数范围
'姓名.n': '', # 姓名,生成随机名字或指定名字列表
'性别.c': ['男', '女'], # 性别,随机选择
'报名时间.dt': ['2024-1-1', '2024-03-31'], # 报名时间,日期范围
'年龄.i': [18, 34], # 年龄,整数范围
'政治面貌.c': ['中共', '群众'], # 政治面貌,类别选择
'学校.c': ['清华大学', '北京大学'], # 学校,选择学校
'政治成绩.i': [36, 100], # 政治成绩,整数范围
'英语成绩.i': [29, 100], # 英语成绩,整数范围
'数学成绩.i': [40, 150], # 数学成绩,整数范围
'在线时长.f': (1000.3, 9999.55, 2) # 在线时长,浮点数范围
}
4. 获取系统信息
PET 工具包还提供了提取系统信息的功能,帮助学生学习如何获取系统的资源使用情况。以下是一些可用的功能:
-
获取目录结构信息:
from pet.datasets import get_directory_info_dataframe directory_info = get_directory_info_dataframe() print(directory_info.head())
-
获取进程信息:
from pet.datasets import get_pid_info_dataframe pid_info = get_pid_info_dataframe() print(pid_info.head())
-
获取网络流量信息:
from pet.datasets import get_pid_network_info_dataframe network_info = get_pid_network_info_dataframe() print(network_info.head())
这些功能可以帮助学生更好地了解操作系统、进程和网络信息,并在实验中进行数据分析。
5. 音频处理
PET 工具包内置了文本转语音功能,使得教学过程更加生动、互动。
from pet.util import audio
audio.say("hello, world", echo=True)
echo=True参数可以添加回音效果,使语音播放更有趣。
如何贡献与更新
PET 工具包会定期进行更新,添加新功能并修复已知问题。如果您有好的建议或遇到问题,欢迎通过邮件与我联系:
- Email: liluqun@gmail.com
- GitHub: https://github.com/liluqun
开发团队与支持
- 教材编写:李鲁群 李晓丰 郑晓宁 孙璇
结语
Python Education Tools (PET) 是一个强大的工具包,适合用于教学、实验以及数据分析项目。通过该工具包,学生能够快速获取所需的教学资源、实验数据,并进行有效的学习和分析。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file python_education_tools-26.2.48-py3-none-any.whl.
File metadata
- Download URL: python_education_tools-26.2.48-py3-none-any.whl
- Upload date:
- Size: 2.9 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee8fabc3395fe165893bd1ea64b0581914969365489a9683ee17143a9a49a3fa
|
|
| MD5 |
5685b2c6d16824eb9bf43d6fbbdbd2a9
|
|
| BLAKE2b-256 |
8289db33aeda0d7124973c2dc85ae7f09263c5e939804913eb509d8e69d6055e
|