16.3.3.1 Класс hdr 
Получить запись из объекта хэдера можно, используя возможности Python для работы со словарями. Это гораздо удобнее, чем вызов headerGetEntry в C-программе. Базовый синтаксис доступа к записи:
| 
 value = h['tag_name']   | 
Например, для получения имени пакета делаем так:
| 
 name = h['name']   | 
Также можно использовать стек предопределенных имен тэгов, которые использует C API. Эти константы определены в модуле rpm и их можно задействовать таким образом:
| 
 name = h[rpm.RPMTAG_NAME]   | 
Для записей хэдера, содержащих массив строк, например, список файлов пакета, данные, возвращаемые методом будут представлять собой список Python:
| 
 print "Files:"   | 
Кроме того, можно использовать file info для организации более компактного кода. Например:
| 
 print "Files:"   | 
Зависимости, возможности, несовместимости и конфликты всякий раз получаются как три отдельных, но ссылающихся друг на друга списка. Например, три списка для зависимостей, три для возможностей и так далее. Эту информацию можно извлекать, используя сет зависимости таким образом:
| 
 print h.dsFromHeader('providename')   | 
 16.3.3.2 Вывод информации с помощью sprintf 
Кроме возможностей Python по работе со словарями для форматирования вывода можно использовать метод sprintf, при этом применяется в точности такой же синтаксис, как для установки формата запросов при запуске утилиты rpm в режиме запросов:
| 
 h.sprintf("%{tag_name}")   | 
Можно добавлять специальные директивы форматирования к имени тега:
| 
 print "Header signature: ", h.sprintf("%{DSAHEADER:pgpsig}")   | 
Эти подходы можно включать в пользовательские функции, выводящие записи хэдера со специфическим форматированием:
| 
 def nvr(h):   | 
 Далее - Запросы о конкретных пакетах 
 Назад - Запросы к БД RPM 
 Содержание