Утверждать, что объект может быть сериализован с помощью joblib - PullRequest
0 голосов
/ 23 января 2020

Я хочу проверить, можно ли сериализовать объект, используя joblib (!). Что-то вроде:

assert pickle.dumps(my_obj)

, похоже, способ использования pickle, но joblib не обеспечивает .dumps. Я попытался сделать:

with tempfile.TemporaryFile("wb") as f:
        assert joblib.dump(my_obj, f)

Но это не удалось, потому что joblib.dump возвращает None в этом случае (хотя согласно do c он должен вернуть что-то, что оценивается как True).

Что будет эквивалентно, если я использую joblib?

1 Ответ

1 голос
/ 24 января 2020

Согласно источнику, ничего не возвращается, если вы передаете объект файла, только если вы передаете имя файла. https://github.com/joblib/joblib/blob/master/joblib/numpy_pickle.py#L510

Таким образом, использование именованного временного файла и передача имени должны помочь.

Запуск кода и утверждение размера файла также кажется правильная стратегия.

...