Beta
chematic for Python
chematic 的 Python 包构建在与 Rust crate 和 WebAssembly 版本相同的 Rust 核心之上, 可直接用于 Python 用户熟悉的工作方式:notebook、pandas DataFrame 和结构文件目录的批处理。 先在小脚本或 notebook 中尝试,产品需要扩展时,再将同一套分子操作带到 Rust 服务或浏览器功能中。
安装
pip install chematic已在 PyPI 上发布版本 1.1.7, 分类为 Beta,支持的 Python 版本为 3.9–3.13。 仓库中的快速上手 notebook提供了可直接运行的示例。
Jupyter 与 notebook
典型的使用流程是解析一个结构、查看其内容,并在 notebook 中内联渲染:
import chematic
mol = chematic.from_smiles("CC(=O)OC1=CC=CC=C1C(=O)O")
mol.smiles
mol.mw
mol.svg()Python 包使用from_smiles、mw等属性,以及返回描绘字符串的svg()。在生产工作流中依赖特定版本前,请查阅API 参考文档。
pandas 与批量分析
无论是筛选 DataFrame 中一整列 SMILES,还是遍历一个目录下的 SDF 文件, chematic 的描述符与指纹计算都只是普通的 Python 函数,不需要服务器或数据库 —— 这与浏览器版和Rust 版使用的是同一套底层逻辑,因此批处理脚本和 notebook 单元格调用的是完全相同的代码。
为什么从 Python 开始使用 chematic
- 让 notebook、批量分析、浏览器工具和 Rust 服务使用同一化学引擎。
- 可直接从 Python 调用解析、描述符、指纹与绘制,不需要化学计算服务器或数据库。
- 可先检查发布 wheel 与验证记录,再将所需操作放入生产工作流。
这里所说的"RDKit 兼容子集"是什么意思
兼容性按操作逐项验证,而不是由 API 的数量决定。公开比较记录直接覆盖 TPSA、Labute ASA 和手性 Morgan。 在用其他描述符或工作流替代 RDKit 结果前,请针对实际使用的语料库单独验证。
Mol.descriptors() 总共返回 194 个数值。这个数字是 API 项目数, 不是验证得分。有关发布产物记录、源码候选记录和当前限制,请参见验证页面。