python - 调用存储在列表中的多个函数
问题描述
我有一个程序,我想自动化,尽可能地删除预处理步骤。通过读取数据集,程序会生成一系列函数调用,这些函数调用将在后续步骤中使用。目前我只是将存储在变量中的生成调用复制到文件中,但如果可能的话我想跳过这一步
##preprocessing steps here...
bindings = ["g.bind('rdf', URIRef('http://www.w3.org/1999/02/22-rdf-syntax-ns#'))",
"g.bind('bf', URIRef('http://id.loc.gov/ontologies/bibframe/'))",
"g.bind('bflc', URIRef('http://id.loc.gov/ontologies/bflc/'))"]
### then the bind calls are added to the function below.
g = rdflib.Graph()
g.bind('rdf', URIRef('http://www.w3.org/1999/02/22-rdf-syntax-ns#'))
g.bind('bf', URIRef('http://id.loc.gov/ontologies/bibframe/'))
g.bind('bflc', URIRef('http://id.loc.gov/ontologies/bflc/'))```
g.parse(data= graph, format='nt')
g.serialize(format='turtle')
如何从流程中删除复制和粘贴?
解决方案
这些调用都是针对同一个功能的吗?如果是这样,则无需存储表示函数调用的字符串;只存储它应该被调用的数据。
bindings = [
('rdf', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'),
('bf', 'http://id.loc.gov/ontologies/bibframe/'),
('bflc', 'http://id.loc.gov/ontologies/bflc/'),
]
# ...
for key, uri in bindings:
g.bind(key, URIRef(uri))
推荐阅读
- django - 为什么 Django form_valid 调用了两次?
- sql - 如何使用具有多个连接的其他表中的值更新字段?
- ssis - 作业失败并出现错误:无法将行添加到输出缓冲区 SSIS
- python - 如何检查一个项目是否在 PHP 的 list.txt 中?
- amazon-s3 - AWS S3 将参数添加到签名的 url
- java - 2个值之间的硒比较失败
- css - React&TypeScript:样式表对象的类型是什么?
- angular - Angular Material Stepper,每个步骤都有单独的组件 - ExpressionChangedAfterItHasBeenCheckedError
- java - Spring MethodArgumentNotValidException 字段始终为空
- python - Impyla 连接。无法启动 SASL。没有可用的机制