Python工具集,包含飞书API、AutoDL API和日志工具
Project description
zdpytools
Python工具集,提供日志、飞书API和AutoDL API集成功能。
功能
- 日志工具:基于loguru的简单易用的日志模块
- 飞书API:飞书开放平台API的封装,支持多维表格操作
- AutoDL API:基于httpx的AutoDL弹性部署API异步封装
安装
pip install zdpytools
使用示例
日志工具
from zdpytools.utils.log import logger
logger.info("这是一条信息日志")
logger.error("这是一条错误日志")
飞书API
import asyncio
from zdpytools.feishu import Feishu
async def example():
fs = Feishu(app_id="你的飞书应用ID", app_secret="你的飞书应用密钥")
try:
# 查询多维表格记录
result = await fs.bitable_records_search("app_token", "table_id")
print(result)
finally:
await fs.close()
asyncio.run(example())
AutoDL API
import asyncio
from zdpytools.autodl import AutoDLClient
from zdpytools.utils.log import logger
async def example():
# 可以直接传入token或者设置环境变量 AUTODL_TOKEN
async with AutoDLClient() as client:
try:
# 获取GPU库存
gpu_stock = await client.get_gpu_stock(
region_sign="westDC2",
cuda_v_from=117,
cuda_v_to=128
)
for gpu_info in gpu_stock:
for gpu_name, stock in gpu_info.items():
logger.info(f"GPU型号: {gpu_name}, 空闲数量: {stock.get('idle_gpu_num')}")
except Exception as e:
logger.error(f"获取GPU库存失败: {e}")
asyncio.run(example())
命名原则
根据 Python 的最佳实践和代码可读性,建议采用以下命名规范:
-
模块文件(.py文件):
- 使用小写字母加下划线(snake_case)
- 例如:
feishu.py,webhook.py,const.py - 原因:这是 Python 社区的标准做法,符合 PEP 8 规范
-
类文件:
- 使用驼峰命名法(CamelCase)
- 例如:
BaseModel.py,FeishuBase.py - 原因:类名通常使用驼峰法,这样更容易识别类的定义
-
目录名:
- 使用小写字母加下划线
- 例如:
feishu/,utils/ - 原因:保持与模块命名一致
-
特殊文件:
__init__.py保持原样(这是 Python 包的标准命名)__pycache__保持原样(这是 Python 的标准目录)
这样的命名规范有以下优点:
- 符合 Python 社区规范
- 提高代码可读性
- 便于区分模块和类
- 保持一致性
- 避免命名冲突
封装更新
python build_package.py
许可证
MIT
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
zdpytools-0.1.28.tar.gz
(30.8 kB
view details)
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 zdpytools-0.1.28.tar.gz.
File metadata
- Download URL: zdpytools-0.1.28.tar.gz
- Upload date:
- Size: 30.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
86857c57c23851d1ada1549d0c8d1b411e86ba0887171ba4761051dd5d18f8d4
|
|
| MD5 |
43c8b164461b3aecf290ef556193ac47
|
|
| BLAKE2b-256 |
f52a080037a8c119302e0a33b3e6299280342cd74561578aee7302838ced41b7
|
File details
Details for the file zdpytools-0.1.28-py3-none-any.whl.
File metadata
- Download URL: zdpytools-0.1.28-py3-none-any.whl
- Upload date:
- Size: 36.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1a4cf7deec88ee33f8163bea4aa64c24dc2e39bc9d6cb42474268a28c92ec53
|
|
| MD5 |
ab8d82f02c1c12b7724f5037f6f246d4
|
|
| BLAKE2b-256 |
98d0fd754600aecf6444b5e434b292f9f602babee133435aee85b22bc7b74c44
|