rpmqa.py from Fedora RPM guide.
#!/usr/bin/python
# https://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-rpm-programming-python.html
# Acts like rpm -qa and lists the names of all the installed packages.
# Usage:
# python rpmqa.py
import rpm
ts = rpm.TransactionSet()
mi = ts.dbMatch()
#for p in mi:
# print "%s-%s-%s" % (p['name'], p['version'], p['release']).
for p in sorted([h['name'] for h in mi]):
print(p)