python - 如何使用 libsbml 读取 sbml 文件的属性

标签 python xml sbml

我有一个Reactome的sbml模型,你可以从https://reactome.org/content/detail/R-HSA-156581下载它并单击 sbml。对于<reaction> ,其中一些属性为 <listOfModifiers> ,我正在尝试使用 libsbml 或 cobrapy 来做到这一点。

我的代码读取了sbml文件,但是如何获取<listOfModifiers>的属性?

sbml_test_file = "./R-HSA-156581.sbml"

# Using the libSBML python API
# http://model.caltech.edu/software/libsbml/5.18.0/docs/formatted/python-api/libsbml-python-reading-files.html
reader = libsbml.SBMLReader()
document = reader.readSBML(sbml_test_file)
model = document.getModel()

最佳答案

libsbml API 旨在直接模仿 SBML 本身的结构。因此,一旦有了模型,您就可以从模型中获得 react ,一旦有了 react ,您就可以获得 react 的修饰符:

    import libsbml
    
    sbml_test_file = "R-HSA-156581.sbml"
    reader = libsbml.SBMLReader()
    document = reader.readSBML(sbml_test_file)
    model = document.getModel()
    for r in range(model.getNumReactions()):
        rxn = model.getReaction(r)
        for m in range(rxn.getNumModifiers()):
            mod = rxn.getModifier(m)
            print(mod.getId(), "in reaction", rxn.getId())

关于python - 如何使用 libsbml 读取 sbml 文件的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65814346/

相关文章:

python - 生成给定条件的列表的所有组合

python - 插入数据后更改类的类类型

python - 解析 CSV header

c++ - 如何使用 POCO 解析 xml 文件并将特定节点提取到 std::string?

python - 如何更改 __builtins__ 模块变量?

xml - 处理垂直制表符和其他无效 xml 字符的最佳实践

c# - 如何将 Streamreader 数据转换为 XmlDocument?

php - 使用命名空间前缀更新 XML 文件

python - 当前节点的 Xpath 选择属性?

python - 如何将 SBML 公式转换为程序代码?