我试图用Python处理一个大字节流。据我所知,使用'with'语句可以防止将临时数据加载到内存中,这对我来说是一个优势。在
我的问题是我有两个选择来选择我的源数据流:原始数据流或源路径。在
if sourceRef:
with open(sourceRef, 'rb') as ds:
dstreams['master'] = self._generateMasterFile(ds)
else:
with self._validate(source) as ds:
dstreams['master'] = self._generateMasterFile(ds)
这很好用,但是我有更复杂的场景,在这些场景中,遵循“with”条件的操作更复杂,我不想重复它们。在
有没有办法压缩这两个选项?在
谢谢你
总经理
编辑:我使用的是python3。在
只要这两个操作分别与
with
一起工作,就可以按如下方式内联if
语句:最干净的解决方案可能是预先定义
ds
:当您有两个以上可能的
ds
值时,这种方法也可以以一种干净的方式工作(您可以简单地预先扩展检查来确定ds
的值)。在相关问题 更多 >
编程相关推荐