Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео.
Модуль pprint для "красивого" вывода объектов в Python
pprint весьма полезный модуль. Хотя правильно, красиво вывести данные всегда можно и "вручную", написав собственную функцию вывода.
И так, библиотека pprint и её модули. Перечислим в начале параметры форматирования, используемые данной библиотекой
- indent=1 — отступ;
- width=80 — ширина экрана вывода;
- depth=None — показ глубины вложенности;
- stream=None — поток;
- compact=False — компактное форматирование;
- sort_dicts=True — сортировка словаря.
Модуль pp
Пример 1.
#!/usr/bin/python3
import pprint
dd = {'Один': 1, 'Два': 2, 'Три': 3, 'Четыре': {2: 'два', 1: 'один'}}
pprint.pp(dd, width=20, indent=2)
Результат работы программы
Модуль pprint
Пример 2
#!/usr/bin/python3
import pprint
dd1 = {'Один': 1, 'Два': 2, 'Три': 3, 'Четыре': 4}
dd = {'Один': 1, 'Два': 2, 'Три': 3, 'Четыре': dd1}
pprint.pprint(dd, width=20, depth=2)
Результат выполнения программы, здесь параметр сортировки по у умолчанию установлен "сортировать"
или изменим глубину вложенности на 1, получим
#!/usr/bin/python3
import pprint
dd1 = {'Один': 1, 'Два': 2, 'Три': 3, 'Четыре': 4}
dd = {'Один': 1, 'Два': 2, 'Три': 3, 'Четыре': dd1}
pprint.pprint(dd, width=20, depth=1)
Результат работы программы
Модуль PrettyPrinter
Модуль имеет ряд объектов: pformat(), pprint(), isreadable(), isrecursive(), format().
#!/usr/bin/python3
import pprint
ls1 = [1, 2, 3, 4, 5]
ls = [10, 9] + ls1
pp = pprint.PrettyPrinter(indent=4, width=20)
pp.pprint(ls)
Результат выполнения программы
Модуль pformat
#!/usr/bin/python3
import pprint
ls1 = [1, 2, 3, 4, 5]
ls = [10, 9] + ls1
pp = pprint.pformat(ls, indent=1, width=20)
pprint.pprint(pp)
Результат выполнения программы
'[10,\n 9,\n 1,\n 2,\n 3,\n 4,\n 5]'
Ну и всё, пока!
Хорошего программирования. Оставляйте свои комментарии, не забывайте про лайки и подписывайтесь на мой канал programmer's notes.