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.29.tar.gz
(32.9 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.29.tar.gz.
File metadata
- Download URL: zdpytools-0.1.29.tar.gz
- Upload date:
- Size: 32.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4fb1028582b43c71fc206f1af84251021c770c8fa6fb027a42a25bbb84eec665
|
|
| MD5 |
3635e80e6bd21043e334929c618cc2df
|
|
| BLAKE2b-256 |
0b646b83bbd54bc18384d4af2500e27359544d93fc68f01d747e62e2c0ba754c
|
File details
Details for the file zdpytools-0.1.29-py3-none-any.whl.
File metadata
- Download URL: zdpytools-0.1.29-py3-none-any.whl
- Upload date:
- Size: 39.2 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 |
020799b2f0e1e4b65ea670583388ea508c1dec441fbfa7366fbbe9e54c40969f
|
|
| MD5 |
49b8fd693501b91c8fc88f56c96a8f9e
|
|
| BLAKE2b-256 |
47544cb0258a73dc2ae327dfe0307fde2cbd91eb476eb13a97617e0a6f9647b2
|