Найти тему
programmer's notes (python and more)

Программирование на языке Python. Модуль pprint

Оглавление

Доброго времени суток, читатели, зрители моего канала 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.

Ваша программа работает, но выводит результаты как-то без уважения
Ваша программа работает, но выводит результаты как-то без уважения