如何解压缩里面有多个文件夹/文件的.xz文件?

vim*_*mal 12 python lzma

我正在尝试解压缩.xz文件,其中包含一些foders和文件.我没有看到使用lzma模块执行此操作的直接方法.这就是我所看到的解压缩方法:

In [1]: import lzma

In [2]: f = lzma.decompress("test.tar.xz")
---------------------------------------------------------------------------
error                                     Traceback (most recent call last)
<ipython-input-2-3b08bf488f9d> in <module>()
----> 1 f = lzma.decompress("test.tar.xz")

error: unknown file format
Run Code Online (Sandbox Code Playgroud)

是否还有其他方法可以解压缩此文件,以便创建生成的文件夹?

fal*_*tru 27

Python 3.3

import tarfile

with tarfile.open('test.tar.xz') as f:
    f.extractall('.')
Run Code Online (Sandbox Code Playgroud)

Python 2.7

在Python 2.7中需要lzma

import contextlib
import lzma
import tarfile

with contextlib.closing(lzma.LZMAFile('test.tar.xz')) as xz:
    with tarfile.open(fileobj=xz) as f:
        f.extractall('.')
Run Code Online (Sandbox Code Playgroud)