O problema é que você está passando shell=True , então você está executando
sh -c gunzip /path/to/file.gz
(assumindo a_path+myfile_gz é "/path/to/file.gz" ). Em outras palavras, como o parâmetro shell é True , o primeiro elemento da lista de comandos é um fragmento de shell; os outros argumentos são argumentos para esse fragmento de shell (aqui apenas $0 ). Isso é explicado na documentação .
Se você deixar de fora shell=True , você começará a trabalhar, mas não um bom código. Não manipule caminhos como strings; use as funções no os.path . Esse a_path+myfile_gz provavelmente deve ser os.path.join(a_path, myfile_gz) .
Em qualquer caso, o Python tem suporte interno para gzip . Não use um comando externo.