from rdkit import Chem
sub_smi = r'C[C@@]12CCC(=O)C=C2CC[C@@]3([H])[C@]4([H])CC[C@@]([H])([C@@]4(C)CC[C@@]31[H])O'
pro_smi = r'CC12CCC(=O)C=C2CCC3C1CCC4(C)C(CC(C34)O)O'
sub_mol = Chem.MolFromSmiles(sub_smi, sanitize=0)
pro_mol = Chem.MolFromSmiles(pro_smi, sanitize=0)
sub_smi = Chem.MolToSmiles(sub_mol, isomericSmiles=0, canonical=0)
pro_smi = Chem.MolToSmiles(pro_mol, isomericSmiles=0, canonical=0)
rdt_input = str(sub_smi+'>>'+pro_smi)
print(rdt_input)
return反应原子id(索引)(从0开始),判断标准如下:
degree改变(degree是连接数,受是否H隐藏影响);
键链接的邻居改变;
未map的原子;
与未map原子连接的原子
原子序数变化的原子(除非相应的产物原子隐藏)
GetIdx()获取原子的索引
GetSymbol()获取原子符号