如何嵌套任意数量的Python文件上下文管理器?
发布时间:2020-12-16 21:50:57 所属栏目:Python 来源:网络整理
导读:我想采用任意数量的路径来表示嵌套的tar档案,并对最里面的档案执行操作.问题是,嵌套可以是任意的,因此我需要的上下文管理器的数量也是任意的. 举个例子: ARCHIVE_PATH = "path/to/archive.tar"INNER_PATHS = ( "nested/within/archive/one.tar","nested/wit
我想采用任意数量的路径来表示嵌套的tar档案,并对最里面的档案执行操作.问题是,嵌套可以是任意的,因此我需要的上下文管理器的数量也是任意的. 举个例子:
我不能使用with语句的nesting syntax,因为可以有任意数量的级别来嵌套.我不能使用
有没有办法使用语言结构来执行此操作,还是需要手动管理我自己的打开文件对象堆栈? 最佳答案
对于这种情况,您可以使用递归.对于这种情况来说感觉最自然(当然如果在Python中没有特殊处理):
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |