一、初级篇
1.氢原子显示与隐藏
正常情况下,分子在rdkit中存储时,氢以隐式氢的形式存储,即不会在图片中显示出来。当需要加入氢原子时,例如要生成和优化立体结构,可以通过函数加上氢原子。
- 加氢:AddHs()
- 去氢:RemoveHs()
>>> from rdkit import Chem
>>> m = Chem.MolFromSmiles('CCO')
>>> print(m.GetNumAtoms())
3
>>> m2 = Chem.AddHs(m)
>>> print(m2.GetNumAtoms())
9
>>> m2 = Chem.RemoveHs(m2)
>>> print(m2.GetNumAtoms())
3
2.芳香键与kekule式转换
- 芳香键在Rdkit中存储类型为"AROMATIC",可以转化为kelule式:Kekulize()
>>> m = Chem.MolFromSmiles('c1ccccc1')
>>> print(m.GetBondWithIdx(0).GetBondType())
AROMATIC
>>> Chem.Kekulize(m)
>>> print(m.GetBondWithIdx(0).GetBondType())
DOUBLE
>>> print(m.GetBondWithIdx(1).GetBondType())
SINGLE
转化后,类型中虽然变为单键和双键,但依然是芳香键
- 查看是否为芳香键:GetIsAromatic()
>>>