Если вы имеете в виду эти многие "универсальные форматы файлов", например, универсальный набор данных 58 и многие другие нумерованные наборы данных, я не думаю, что есть какие-либо библиотеки Python для их непосредственного чтения. Я думаю, вам придется написать свой собственный код, в зависимости от того, какие номера «универсального набора данных» вам нужны.
Это будет какая-то работа, но, возможно, не такая уж ужасная: все форматы задокументированы в / для Fortran IV (дает представление о приблизительном возрасте этих форматов ...!), Так что они не Трудно интерпретировать, если вы знаете нотацию ФОРМАТ Фортрана. Например, в UDV 58 первые несколько строк задокументированы как
Record 1: Format(80A1)
означает «80 байтов, которые должны интерпретироваться как одна текстовая байтовая строка [[ASCII]]»; несколько строк вниз,
Record 6: Format(2(I5,I10),2(1X,10A1,I10,I4))
означает «дважды 5-значное целое число, за которым следует 10-значное целое число; затем дважды пробел, 10-байтовую строку ascii, 10-значное целое число, 4-значное целое число» и следующие строки в документе объясните значение десяти полей (пробел, 1X, не объясняется ;-) - тип функции с кодом 0 для общего или неизвестного, 1 для отклика времени, 2 для автоматического спектра, ... все путь к 27 для функции заказа или 28 для компенсации фазы; затем идентификационный номер функции; и так далее, и тому подобное.
Формат оператора Fortran IV FORMAT не так уж сложен и широко документирован, например, здесь . Кроме того, вы можете написать очень простой код на Фортране, который просто применяет последовательность форматов, как указано в этих документах, и превратить его в расширение Python с f2py (или, может быть, pyfortran , но я думаю, что последнее не поддерживалось в последние несколько лет, когда Пол Дюбуа ушел на пенсию).
Еще одна возможность: python-fortranformat специально предназначен для использования операторов формата fortran в Python. Это «работа в процессе», но сейчас она достаточно стабильна. Установить с easy_install -U fortranformat
.