[ PROMPT_NODE_26406 ]
api_quick_reference
[ SKILL_DOCUMENTATION ]
# COBRApy API 快速参考
本文档提供了常用 COBRApy 函数、签名及使用模式的快速参考。
## 模型 I/O
### 加载模型
python
from cobra.io import load_model, read_sbml_model, load_json_model, load_yaml_model, load_matlab_model
# 内置测试模型
model = load_model("textbook") # 大肠杆菌核心代谢
model = load_model("ecoli") # 完整大肠杆菌 iJO1366
model = load_model("salmonella") # 沙门氏菌 LT2
# 从文件加载
model = read_sbml_model(filename, f_replace={}, **kwargs)
model = load_json_model(filename)
model = load_yaml_model(filename)
model = load_matlab_model(filename, variable_name=None)
### 保存模型
python
from cobra.io import write_sbml_model, save_json_model, save_yaml_model, save_matlab_model
write_sbml_model(model, filename, f_replace={}, **kwargs)
save_json_model(model, filename, pretty=False, **kwargs)
save_yaml_model(model, filename, **kwargs)
save_matlab_model(model, filename, **kwargs)
## 模型结构
### 核心类
python
from cobra import Model, Reaction, Metabolite, Gene
# 创建模型
model = Model(id_or_model=None, name=None)
# 创建代谢物
metabolite = Metabolite(
id=None,
formula=None,
name="",
charge=None,
compartment=None
)
# 创建反应
reaction = Reaction(
id=None,
name="",
subsystem="",
lower_bound=0.0,
upper_bound=None
)
# 创建基因
gene = Gene(id=None, name="", functional=True)
### 模型属性
python
# 组件访问 (DictList 对象)
model.reactions # Reaction 对象的 DictList
model.metabolites # Metabolite 对象的 DictList
model.genes # Gene 对象的 DictList
# 特殊反应列表
model.exchanges # 交换反应 (外部运输)
model.demands # 需求反应 (代谢物汇)
model.sinks # 汇反应
model.boundary # 所有边界反应
# 模型属性
model.objective # 当前目标 (读/写)
model.objective_direction # "max" 或 "min"
model.medium # 生长培养基 (交换: 约束的字典)
model.solver # 优化求解器
### DictList 方法
python
# 按索引访问
item = model.reactions[0]
# 按 ID 访问
item = model.reactions.get_by_id("PFK")
# 按字符串查询 (子字符串匹配)
items = model.reactions.query("atp") # 不区分大小写搜索
items = model.reactions.query(lambda x: x.subsystem == "Glycolysis")
# 列表推导式
item