基于RDKit的Python脚本:SDF格式转SMILES格式

RDKit: Open-Source Cheminformatics Software

 http://www.rdkit.org/

        简化分子线性输入规范(SMILES)是一种用ASCII字符串明确描述分子结构的规范,由David Weininger和Arthur Weininger于20世纪80年代晚期开发,并由其他人,尤其是日光化学信息系统有限公司修改和扩展。

 

       SMILES字符串可以被大多数分子编辑软件导入并转换成二维图形或分子的三维模型。转换成二维图形可以使用Helson的“结构图生成算法”(Structure Diagram Generation algorithms)。

 

基于RDKit的Python脚本:sdf格式转smiles格式

#!usr/bin/python3
# python sdftosmiles.py molecules.sdf

import sys
from rdkit import Chem

def converter(file_name):
    mols = [ mol for mol in Chem.SDMolSupplier( file_name ) ]
    outname = file_name.split(".sdf")[0] + ".smi"
    out_file = open( outname, "w" )
    for mol in mols:
        smi = Chem.MolToSmiles(mol)
        name = mol.GetProp("_Name")
        out_file.write( "{}\t{}\n".format(smi, name ))
    out_file.close()

if __name__=="__main__

你可能感兴趣的:(RDKit,化学信息学与AI)