Python equivalente à saída do arquivo de canalização para gzip no Perl usando um pipe

Preciso descobrir como gravar a saída do arquivo em um arquivo compactado no Python, semelhante ao de duas linhas abaixo:

open ZIPPED, "| gzip -c > zipped.gz";
print ZIPPED "Hello world\n";

No Perl, isso usa o Unix gzip para compactar o que você imprime no arquivo ZIPPED para o arquivo "zipped.gz"

Eu sei como usar "import gzip" para fazer isso no Python assim:

import gzip
zipped = gzip.open("zipped.gz", 'wb')
zipped.write("Hello world\n")

No entanto, isso é extremamente lento. De acordo com o criador de perfil, o uso desse método ocupa 90% do meu tempo de execução, pois estou gravando 200 GB de dados não compactados em vários arquivos de saída. Estou ciente de que o sistema de arquivos pode fazer parte do problema aqui, mas quero descartá-lo usando a compactação Unix / Linux. Isso ocorre parcialmente porque ouvi dizer que a descompactação usando esse mesmo módulo também é lent

questionAnswers(3)

yourAnswerToTheQuestion