You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RDKit中MolToXYZFile参数匹配错误求助:SMILES转XYZ文件失败

解决RDKit中MolToXYZFile的Boost.Python参数错误

问题原因

错误提示明确显示,MolToXYZFile的C++签名要求必须传入分子对象和输出文件名两个必填参数(第三个参数confId为可选,默认值-1),你当前的代码只传入了分子对象,缺少文件名参数,导致参数不匹配。

修正后的代码

import numpy as np
import pandas as pd
from rdkit import Chem
from rdkit.Chem import AllChem

mol = Chem.MolFromSmiles('ClCCl')  
mol = Chem.AddHs(mol)
AllChem.EmbedMolecule(mol)
AllChem.MMFFOptimizeMolecule(mol)
# 补充输出文件名参数,这里以二氯甲烷的xyz文件为例
Chem.MolToXYZFile(mol, "dichloromethane.xyz")

补充说明

  • 无需更换Boost版本,该问题与Boost版本无关,仅为参数传递错误导致。
  • 如果需要指定特定构象输出,可以添加第三个参数confId,例如:
    Chem.MolToXYZFile(mol, "dichloromethane.xyz", confId=0)
    

内容的提问来源于stack exchange,提问作者ki092

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 08:15:48