Skip to content

Commit 4291674

Browse files
Clean up chunk calculations in train_dict
Co-authored-by: Adam Turner <[email protected]>
1 parent 8b7cb6d commit 4291674

File tree

1 file changed

+4
-13
lines changed

1 file changed

+4
-13
lines changed

Lib/compression/zstd/__init__.py

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -114,20 +114,11 @@ def train_dict(samples, dict_size):
114114
ds_cls = type(dict_size).__qualname__
115115
raise TypeError('dict_size must be an int object, not {ds_cls!r}.')
116116

117-
# Prepare data
118-
chunks = []
119-
chunk_sizes = []
120-
for chunk in samples:
121-
chunks.append(chunk)
122-
chunk_sizes.append(_nbytes(chunk))
123-
124-
chunks = b''.join(chunks)
117+
samples = tuple(samples)
118+
chunks = b''.join(samples)
119+
chunk_sizes = tuple(map(_nbytes, samples))
125120
if not chunks:
126-
raise ValueError("The samples are empty content, can't train dictionary.")
127-
128-
# samples_bytes: samples be stored concatenated in a single flat buffer.
129-
# samples_size_list: a list of each sample's size.
130-
# dict_size: size of the dictionary, in bytes.
121+
raise ValueError("samples contained no data; can't train dictionary.")
131122
dict_content = _train_dict(chunks, chunk_sizes, dict_size)
132123

133124
return ZstdDict(dict_content)

0 commit comments

Comments
 (0)