PLUSH_PYTHON Telegram 23
Как удобно выводить на экран вложенные структуры?
#py_basic

Иногда приходится иметь дело со сложными питоновскими структурами данных: например, у нас есть список словарей, в котором ключи являются кортежами, а значения списками. Что делать, если нужно быстро разобраться, как организованы подобные данные? Можно использовать дебаггер, но иногда это бывает неудобно. Что если нам просто хочется быстро и красиво вывести данные на экран?

Рассмотрим простой пример (скриншот 1). Выводить сложную структуру на экран "в лоб" обычным вызовом print не всегда наглядно - данные отображаются в одну строку, их структуру довольно сложно считать.

В качестве альтернативы можно применить стандартный модуль pprint (сокращённое pretty print). Становится чуть лучше (скриншот 2). Кстати, из функции pprint.pprint / pprint.pp можно легко записывать в файл, а отображение данных можно настраивать с помощью аргументов. На RealPython даже целый тьюториал про это написали:
https://realpython.com/python-pretty-print/

Есть ещё один чуть менее очевидный способ - воспользоваться преобразованием данных в формат строки JSON с отступами (скриншот 3). У этого подхода есть свои существенные ограничения, но иногда бывает очень удобно. Лично мне форматирование стандартных питоновских структур данных в json.dumps нравится больше, чем использование pprint.pprint.

В качестве бонуса - полезно знать о сторонней библиотеке rich, в которой есть функция print с таким же интерфейсом, как и стандартный питоновский print. Отличие в том, что rich при выводе на экран раскрашивает в разные цвета числа, строки, булевы значения и т.д. (скриншот 4). Это, конечно, не решает проблему вывода на экран сложных структур с глубокой вложенностью, но иногда помогает легче считывать то, что выводится на экран, особенно в консоли. А для сложных структур в rich есть свой pprint (скриншот 5).



tgoop.com/plush_python/23
Create:
Last Update:

Как удобно выводить на экран вложенные структуры?
#py_basic

Иногда приходится иметь дело со сложными питоновскими структурами данных: например, у нас есть список словарей, в котором ключи являются кортежами, а значения списками. Что делать, если нужно быстро разобраться, как организованы подобные данные? Можно использовать дебаггер, но иногда это бывает неудобно. Что если нам просто хочется быстро и красиво вывести данные на экран?

Рассмотрим простой пример (скриншот 1). Выводить сложную структуру на экран "в лоб" обычным вызовом print не всегда наглядно - данные отображаются в одну строку, их структуру довольно сложно считать.

В качестве альтернативы можно применить стандартный модуль pprint (сокращённое pretty print). Становится чуть лучше (скриншот 2). Кстати, из функции pprint.pprint / pprint.pp можно легко записывать в файл, а отображение данных можно настраивать с помощью аргументов. На RealPython даже целый тьюториал про это написали:
https://realpython.com/python-pretty-print/

Есть ещё один чуть менее очевидный способ - воспользоваться преобразованием данных в формат строки JSON с отступами (скриншот 3). У этого подхода есть свои существенные ограничения, но иногда бывает очень удобно. Лично мне форматирование стандартных питоновских структур данных в json.dumps нравится больше, чем использование pprint.pprint.

В качестве бонуса - полезно знать о сторонней библиотеке rich, в которой есть функция print с таким же интерфейсом, как и стандартный питоновский print. Отличие в том, что rich при выводе на экран раскрашивает в разные цвета числа, строки, булевы значения и т.д. (скриншот 4). Это, конечно, не решает проблему вывода на экран сложных структур с глубокой вложенностью, но иногда помогает легче считывать то, что выводится на экран, особенно в консоли. А для сложных структур в rich есть свой pprint (скриншот 5).

BY Плюшевый Питон








Share with your friend now:
tgoop.com/plush_python/23

View MORE
Open in Telegram


Telegram News

Date: |

The group’s featured image is of a Pepe frog yelling, often referred to as the “REEEEEEE” meme. Pepe the Frog was created back in 2005 by Matt Furie and has since become an internet symbol for meme culture and “degen” culture. Over 33,000 people sent out over 1,000 doxxing messages in the group. Although the administrators tried to delete all of the messages, the posting speed was far too much for them to keep up. Just as the Bitcoin turmoil continues, crypto traders have taken to Telegram to voice their feelings. Crypto investors can reduce their anxiety about losses by joining the “Bear Market Screaming Therapy Group” on Telegram. SUCK Channel Telegram Among the requests, the Brazilian electoral Court wanted to know if they could obtain data on the origins of malicious content posted on the platform. According to the TSE, this would enable the authorities to track false content and identify the user responsible for publishing it in the first place.
from us


Telegram Плюшевый Питон
FROM American