def __init__()

in vizseq/_data/data_sources.py [0:0]


    def __init__(self, path: str):
        assert os.path.exists(path) and path.endswith(ZIP_EXT)
        self.path = path
        self.data = None

        with zipfile.ZipFile(path) as zip_f:
            name_list = zip_f.namelist()

            if len(name_list) == 1:
                self._data_type = VizSeqDataType.text
                assert name_list[0].endswith(TXT_EXT)
                with zip_f.open(name_list[0]) as f:
                    self.data = [l.decode('utf-8').strip() for l in f]
            else:
                metadata_txt_name = None
                for name in name_list:
                    if name.endswith(TXT_EXT):
                        # only one txt file for metadata
                        assert metadata_txt_name is None
                        metadata_txt_name = name
                with zip_f.open(metadata_txt_name) as f:
                    self.data = [l.decode('utf-8').strip() for l in f]
                self._data_type = get_file_type_from_list(self.data)
                assert all(fn in name_list for fn in self.data)