def _write_file_contents(self, data, metadata):
# we explicitly set the dtype to ensure roundtrips preserve file contents exactly
max_metadata_length = max(chain([len(k) for k in metadata.keys()],
[len(str(v)) for v in metadata.values()]))
if PY2:
dtype = "S%d" % max_metadata_length
else:
dtype = "U%d" % max_metadata_length
metadata_array = numpy.array(sorted(metadata.items()), dtype)
numpy.savez(self.filename, data=data, metadata=metadata_array)
评论列表
文章目录