首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有人能说出为什么Chem.MolFromSmiles不把RDKit中的微笑列表转换成摩尔对象吗?

有人能说出为什么Chem.MolFromSmiles不把RDKit中的微笑列表转换成摩尔对象吗?
EN

Stack Overflow用户
提问于 2022-06-25 03:14:57
回答 1查看 190关注 0票数 1

‘mol_object_list = []

对于str_smiles中的摩尔:

Chem.MolFromSmiles(摩尔)

Mol_object_list.append(摩尔)

‘TypeError:没有注册的转换器能够从这个C++对象产生std::basic_string、std::allocator >类型的std::basic_string

我有一个298微笑的列表,我想把这298转换成mol对象,但是rdkit给了我上面的错误。

有人能分辨出出了什么问题吗?

EN

回答 1

Stack Overflow用户

发布于 2022-06-25 08:57:33

首先,您提供的代码将无法工作,因为您需要首先将对象分配给某个对象。就像这样:

代码语言:javascript
运行
复制
mol_object_list = []
for smi in str_smiles:
    mol = Chem.MolFromSmiles(smi)
    mol_object_list.append(mol)

回到您的错误,当微笑字符串输入无效时,就会发生错误。str_smiles列表中的一些微笑可能是错误的。试试下面的代码,找出哪些代码:

代码语言:javascript
运行
复制
mol_object_list = []
for smi in str_smiles:
    try:  # Try converting the SMILES to mol object
        mol = Chem.MolFromSmiles(smi)
        mol_object_list.append(mol)
    except:  # Print the SMILES if there was an error in converting
        print(smi)

打印出来的微笑是无效的,你必须修复它们。

我假设str_smiles是一个python列表。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72751013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档