Загрузите массив numpy в C из файла, который был сохранен с помощью numpy.save (...) - PullRequest
4 голосов
/ 15 марта 2011

Я хотел бы получить доступ к данным в программе на C, которая находится в файле, который был написан с python с использованием numpy.save (...). До сих пор я искал способ вызова C-версии numpy.load моей C-программы, но, похоже, не существует непосредственно доступной C-версии, потому что numpy.load использует модуль pickle. Другим решением было бы запустить встроенный интерпретатор python из C и вызвать numpy.load в этом интерпретаторе, который должен вернуть массив numpy, к которому я затем смогу получить доступ обычным способом. Однако последнее приближение кажется немного тяжелым, потому что я должен использовать переводчика. Есть ли лучший способ напрямую загрузить массив Numpy в C?

1 Ответ

4 голосов
/ 15 марта 2011

Формат .npy на самом деле не предназначен для чтения извне NumPy.Существует множество форматов, которые предоставляют отличные библиотеки C и Python, такие как HDF5 и NetCDF, поэтому я не вижу никакой причины для доступа к собственным файлам NumPy из C.

Если вы все равно хотите это сделатьЗдесь документы .npy формата .Он не использует pickle внутри, если только вы не сохранили объекты Python в своем массиве (но в этом случае мне было бы интересно, что вы собираетесь делать с объектами в вашей C-программе).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...