В настоящее время я работаю над проектом Django, для которого требуется функциональность, заключающаяся в том, чтобы взять строку InChI и преобразовать ее в молекулу, но в пакете, который я использую, похоже, есть проблема с его функцией MolFromInchi
. Всякий раз, когда я пытаюсь использовать эту функцию, python имеет тенденцию генерировать эту трассировку:
Пример.
>>> from rdkit.Chem.inchi import MolFromInchi
>>> mol = MolFromInchi('InChI=1S/O2Si/c1-3-2')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\tcherry\repos\dataslate_django\venv\my-rdkit-env\lib\site-packages\rdkit\Chem\inchi.py", line 71, in MolFromInchi
mol, retcode, message, log = rdinchi.InchiToMol(inchi, sanitize, removeHs)
TypeError: No to_python (by-value) converter found for C++ type: class boost::shared_ptr<class RDKit::ROMol>
Эта ошибка, кажется, происходит из исходного кода пакета rdkit
, но мне было интересно, есть ли что-нибудь, что я могу сделать, чтобы обойти или смягчить эту проблему, все еще будучи в состоянии включить функциональность MolFromInchi
в мой проект.
ПРИМЕЧАНИЕ: я смог воспроизвести эту ошибку после следуйте инструкциям по установке RDKit с Conda, опубликованным в Документация RDKit , и этот вопрос относится к самой последней версии RDKit (2020.03.1).