How to use lzma2 in python code?
Asked Answered
E

1

6

I know there is a module called pylzma. But it only support lzma, not lzma2.

My current solution is using subprocess.call() to call 7z program.

Is there a better way?

Engen answered 10/5, 2013 at 8:1 Comment(0)
L
2

You can use backports.lzma, see for more info: Python 2.7: Compressing data with the XZ format using the "lzma" module

Then it's simply a matter of doing e.g.:

from backports import lzma

with open('hello.xz', 'wb') as f:
    f.write(lzma.compress(b'hello', format=lzma.FORMAT_XZ))

Or simpler (XZ format is default):

with lzma.open('hello.xz', 'wb') as f:
    f.write(b'hello')

See http://docs.python.org/dev/library/lzma.html for usage details.

Lohman answered 30/9, 2016 at 4:50 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.