Mercurial > repos > tduigou > get_sbml_model
view get_infos.py @ 1:ceffb29b60c9 draft
planemo upload commit 9c19f737cd6e2152151c8bf97a53ab1afe51a4a0
author | tduigou |
---|---|
date | Mon, 03 Apr 2023 09:18:22 +0000 |
parents | |
children | fa893f77dc22 |
line wrap: on
line source
from argparse import ArgumentParser from libsbml import ( readSBMLFromFile ) def entry_point(): parser = ArgumentParser('Returns cell informations') parser.add_argument( 'infile', type=str, help='SBML input file (xml)' ) parser.add_argument( '--comp', type=str, help='Path to store cell compartments' ) parser.add_argument( '--biomass', type=str, help='Path to store biomass reaction ID' ) params = parser.parse_args() sbml_doc = readSBMLFromFile(params.infile) if params.comp: compartments = sbml_doc.getModel().getListOfCompartments() with open(params.comp, 'w') as f: f.write('#ID\tNAME\n') for comp in compartments: f.write(f'{comp.getId()}\t{comp.getName()}\n') if params.biomass: reactions = sbml_doc.getModel().getListOfReactions() with open(params.biomass, 'w') as f: f.write('#ID\n') for rxn in reactions: if 'biomass' in rxn.getId().lower(): f.write(f'{rxn.getId()}\n') if __name__ == "__main__": entry_point()