def list_inner_contents(archive_path, inner_paths):

    def rec(tf, rest_paths):
        if not rest_paths:
            return tf.getnames()
with TarFile(fileobj=tf.extractfile(rest_paths[0])) as tf2:
    return rec(tf2, rest_paths[1:])
Как я могу вложить произвольное количество файловых контекстных менеджеров Python?