Some useful tools
Project description
pywayne: 强大的 Python 工具库 ✨
pywayne 是一款集成多种实用功能的工具库,旨在为 Python 与 C++ 开发提供全面支持。无论你在处理信号、数据结构、数学运算、图形可视化,还是在与飞书机器人、阿里云 OSS 或文本转语音(TTS)等领域工作,pywayne 都能提供一站式解决方案。
生态与技能仓库
为了让 AI 编程助手(如 Codex/Claude)更稳定地使用 pywayne 能力,我们维护了配套技能仓库:
- wayne-skills:https://github.com/wangyendt/wayne-skills
两者关系如下:
wayne_algorithm_lib(本仓库)提供源码实现与发布包(pywayne)wayne-skills提供与源码模块对齐的 SKILL.md 指令层(用于 AI agent 选择正确工作流与 API)- 技能目录与源码模块保持映射,便于从“模块名”快速定位到“可执行的 agent 用法”
目录
快速 开始 🚀
- 安装 pywayne:
pip install -U pywayne
- 快速示例:
from pywayne.tools import list_all_files files = list_all_files(".") print(files)
核心功能 ✨
- 工具函数:提供文件处理、日志记录、计时器、单例模式等常用工具。
- 信号处理(dsp):内置 Butterworth 滤波器、局部极值检测、DTW 等多种数字信号处理算法。
- 图形用户界面(gui):支持热键注册、窗口操作、鼠标键盘自动化操作,助你轻松实现 GUI 交互。
- 数学工具(maths):实现因数分解、快速乘法(Karatsuba)及其他数学实用工具。
- 数据结构:包括条件树和并查集实现,优化数据存储和查询。
- 绘图工具(plot):支持频谱图、定制 Colormap 绘图和其他数据可视化功能。
- 姿态与校准(ahrs, calibration):实现 SE3 转换、四元数处理,以及时空数据校准。
- 飞书机器人及监听:整合 lark_custom_bot、lark_bot 和 lark_bot_listener 模块,实现文本、图片、文件等多种消息交互。
- 文本转语音(tts):生成 opus 或 MP3 格式语音文件,为项目增添语音播报功能。
- 云存储支持(aliyun_oss):与阿里云 OSS 集成,提供文件上传、下载和批量操作。
- 辅助模块(helper):包含配置管理与常用辅助函数,助力项目开发。
模块详情 📚
| 模块名称 | 主要功能描述 | Emoji |
|---|---|---|
| tools | 常用工具函数:文件操作、日志记录、计时器、单例模式等 | 🛠️ |
| dsp | 信号处理工具:滤波器、局部极值检测、动态时间规整 (DTW) 等 | 🔊 |
| gui | 图形用户界面自动化:热键绑定、窗口操作、鼠标键盘控制 | 🖥️ |
| maths | 数学工具:因数分解、卡拉楚巴乘法、快速计算等 | ➕➖ |
| data_structure | 数据结构实现:条件树、并查集等 | 🌲 |
| plot | 绘图工具:频谱图、定制 Colormap 绘制、数据可视化 | 📊 |
| ahrs | 姿态估计:SE3 与 pose 转换、姿态可视化 | 🧭 |
| calibration | 校准工具:时空数据校准与处理 | 🔧 |
| lark_custom_bot | 飞书自定义机器人:支持多种消息类型(文本、图片、文件) | 🤖 |
| lark_bot | 飞书机器人交互:文本、图片、文件消息发送 | 💬 |
| lark_bot_listener | 飞书消息监听:实时监听文本、图片、文件消息并处理 | 👂 |
| tts | 文本转语音工具:生成 Opus 或 MP3 格式音频 | 🔈 |
| aliyun_oss | 阿里云 OSS 文件管理:文件上传、下载、删除及目录操作 | ☁️ |
| helper | 辅助模块:配置管理、常用辅助函数 | 🧰 |
安装说明 🔧
安装方法非常简单:
pip install -U pywayne
若需了解更多安装细节及依赖,请参阅 requirements.txt 和 setup.py。
文档 📖
详细文档请访问:
联系方式 📬
如果在使用过程中遇到问题,欢迎通过以下方式联系:
- 邮箱:
- 个人网站:
- LeetCode:http://leetcode.com/wangyehope
- GitHub:http://github.com/wangyendt
贡献说明 🤝
欢迎使用 pywayne,并提出 Pull Request 和 issue! 无论你是对现有功能的改进建议,还是希望增加新的模块,我们都非常欢迎你的贡献。
我们希望 pywayne 能在你的项目中发挥重要作用,带来高效与便利!
Happy coding! 😄
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 Distribution
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 pywayne-1.0.1.6.0.tar.gz.
File metadata
- Download URL: pywayne-1.0.1.6.0.tar.gz
- Upload date:
- Size: 171.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb9348aa086ae302523c1ecd1402b024da59f6978e4318df291fafe38b3e1d98
|
|
| MD5 |
3658bd9c7ee5955feab1009bfe339c68
|
|
| BLAKE2b-256 |
4f2aef17c641143202f7f226f587da617c046b03022f73118edf018955cc1a4d
|
File details
Details for the file pywayne-1.0.1.6.0-py3-none-any.whl.
File metadata
- Download URL: pywayne-1.0.1.6.0-py3-none-any.whl
- Upload date:
- Size: 191.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f61aa8a61b1b5b7b6ddaf6e40c3847426537d54a788d3f445fcd9dd008387a87
|
|
| MD5 |
4defd10a78ef61eb75cdaaa68d2a8e9b
|
|
| BLAKE2b-256 |
459856c8ea8a494385372f7815c847d722be1cb97b3ed7725fe120372cd3cb04
|