7.17.2 (De)compressione sequenziale

La compressione e la decompressione sequenziale viene fatta usando le classi BZ2Compressor e BZ2Decompressor.

class BZ2Compressor( [compresslevel])
Crea un nuovo oggetto compressore. Questo oggetto può essere usato per comprimere i dati sequenzialmente. Se volete comprimere i dati in un colpo solo, usate la funzione compress(). Il parametro compresslevel, se passato, deve essere un numero fra 1 e 9; il predefinito è 9.

compress( data)
Fornisce altri dati all'oggetto compressore. Restituirà pezzi di dati compressi ogni qual volta sia possibile. Quando avete finito di fornire dati da comprimere, chiamate il metodo flush() per terminare il processo di compressione e restituire ciò che è rimasto nei buffer interni.

flush( )
Termina il processo di compressione e restituisce ciò che rimasto nei buffer interni. Non dovete usare l'oggetto compressore dopo aver chiamato questo metodo.

class BZ2Decompressor( )
Crea un nuovo oggetto decompressore. Questo oggetto può essere usato per decomprimere i dati sequenzialmente. Se volete invece decomprimere i dati in un colpo solo, usate la funzione decompress().

decompress( data)
Fornisce altri dati all'oggetto decompressore. Restituirà grossi pezzi di dati decompressi, quando possibile. Se tentate di decomprimere i dati dopo che è stata trovata la fine del flusso, verrà sollevata l'eccezione EOFError. Se vengono trovati dati dopo la fine del flusso, essi verranno ignorati e salvati nell'attributo unused_data.

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.