解压缩器¶
- class torchdata.datapipes.iter.Decompressor(source_datapipe: IterDataPipe[Tuple[str, IOBase]], file_type: Optional[Union[str, CompressionType]] = None)¶
接收路径和压缩数据流的元组,并返回路径和解压缩数据流的元组(函数名称:
decompress
)。可以指定输入压缩格式,也可以根据文件的扩展名自动检测。- 参数:
source_datapipe – 包含路径和压缩数据流元组的 IterDataPipe
file_type – 可选的 字符串 或
CompressionType
,表示输入的压缩格式
示例
>>> from torchdata.datapipes.iter import FileLister, FileOpener >>> tar_file_dp = FileLister(self.temp_dir.name, "*.tar") >>> tar_load_dp = FileOpener(tar_file_dp, mode="b") >>> tar_decompress_dp = Decompressor(tar_load_dp, file_type="tar") >>> for _, stream in tar_decompress_dp: >>> print(stream.read()) b'0123456789abcdef'