В этой статье мы узнаем о мощной библиотеке для Python под названием Rich.

Rich — это библиотека Python для записи форматированного текста (с цветом и стилем) на терминал. Она позволяет отображать расширенный контент, такой как таблицы, markdown и код с подсветкой синтаксиса.

Итак, почему это полезно? Если вы не используете такой инструмент, как Rich, вывод вашего кода на терминал может быть немного скучным и трудным для понимания. Если вы хотите сделать его понятнее и красивее, вы, вероятно, захотите использовать Rich — и вы попали в нужное место, чтобы узнать, как это сделать.

Как установить Rich

Вы можете установить Rich с помощью pip:

pip install Rich

Чтобы узнать, на что способен Rich, вы можете набрать в терминале следующую команду:

python -m rich

Теперь вы можете видеть, что мы можем делать довольно много вещей с Rich. Давайте попробуем несколько из них, чтобы увидеть, как они работают.

БЕСПАЛЕВНЫЙ REACH НА МАЙНКРАФТ! РИЧ БЕЗ БАНА! ХАЙПИКСЕЛЬ НЕ БАНИТ ЗА ЭТОТ РИЧ!

Как вывести Rich на Python

Rich имеет возможность выделять выходные данные в соответствии с типом данных. Мы импортируем альтернативную функцию print из библиотеки Rich, которая принимает те же аргументы, что и встроенная функция print .

Чтобы не путаться со встроенной функцией print , мы будем импортировать print из библиотеки rich как rprint .

from rich import print as rprint nums_list = [1, 2, 3, 4] rprint(nums_list) nums_tuple = (1, 2, 3, 4) rprint(nums_tuple) nums_dict = rprint(nums_dict) bool_list = [True, False] rprint(bool_list)

Видите, как разные типы данных выделяются разными цветами? Это может нам сильно помочь при отладке.

Как выполнить расширенную проверку в Python

Если вы используете встроенную функцию help для просмотра документации библиотеки, вы увидите скучный вывод.

import rich print(help(rich))

У Rich есть функция inspect() , которая может генерировать отчет о любом объекте Python. Это фантастическое средство отладки и хороший пример вывода, который может создать Rich.

from rich import inspect import rich inspect(rich)

Как оформить вашу консоль с помощью Rich

Для полного контроля над форматированием терминала Rich предлагает класс Console .

Давайте напишем функцию для объединения словарей Python.

from rich.console import Console console = Console() def merge_dict(dict_one, dict_two): merged_dict = dict_one | dict_two console.log(merged_dict, log_locals=True) merge_dict(, )

В приведенном выше примере мы использовали метод log , который предлагает те же возможности, что и печать, но добавляет некоторые функции, полезные для отладки работающего приложения.

Читайте также:  Майнкрафт как убивать эндер дракона

НОВЫЙ ЛУЧШИЙ БЕСПЛАТНЫЙ ЧИТ НА SUNRISE/MST NETWORK/WELLMORE RICH CLIENT minecraft cheat

Есть несколько других методов, таких как print , print_json , out , rule , и так далее. Узнайте больше о них здесь.

Как использовать Tree в Rich

У Rich есть класс Tree , который может генерировать древовидное представление в терминале. Древовидное представление — отличный способ представления содержимого файловой системы или любых других иерархических данных. Каждая ветвь дерева может иметь метку, которая может быть текстовой или любой другой визуализируемой Rich.

Давайте посмотрим на пример, создав генеалогическое древо:

from rich.tree import Tree from rich import print as rprint tree = Tree(«Family Tree») tree.add(«Mom») tree.add(«Dad») tree.add(«Brother»).add(«Wife») tree.add(«[red]Sister»).add(«[green]Husband»).add(«[blue]Son») rprint(tree)

Создав экземпляр класса Tree , мы можем использовать этот метод add() для добавления к нему ветвей. Чтобы создать сложное дерево, вы просто используете метод add() для добавления к нему дополнительных ветвей. Обратите внимание на ветвь « Brother and Sister » в приведенном выше примере.

В официальной документации у нас есть файл tree.py, который выводит файловую структуру с помощью Tree. Вывод выглядит следующим образом:

Как отобразить индикатор выполнения с помощью Rich

Rich может отображать постоянно обновляемую информацию о состоянии длительно выполняемых задач, копиях файлов и т. д. Вы также можете настроить эту информацию. По умолчанию он предоставляет описание «задачи», индикатор выполнения, процент выполнения и ожидаемое оставшееся время.

Поддерживается несколько задач с богатым отображением хода выполнения, каждое из которых имеет полосу и статистику выполнения. Вы можете использовать это, чтобы отслеживать несколько заданий, которые выполняются в потоках или процессах.

Давайте сначала попробуем метод создания индикатора выполнения progress.track .

from rich.progress import track from time import sleep def process_data(): sleep(0.02) for _ in track(range(100), description='[green]Processing data’): process_data()

Если мы хотим записать время завершения выполнения конкретной задачи, мы можем использовать вместо этого console.status .

from rich.console import Console from time import sleep console = Console() data = [1, 2, 3, 4, 5] with console.status(«[bold green]Fetching data. «) as status: while data: num = data.pop(0) sleep(1) console.log(f»[green]Finish fetching data[/green] «) console.log(f'[bold][red]Done!’)

Вы можете работать напрямую с классом Progress, если вам нужно несколько задач на дисплее или вы хотите настроить столбцы на дисплее прогресса. После создания объекта Progress используйте ( add_task() ) для добавления задач и ( update_progress() ) для обновления хода выполнения.

Читайте также:  Как строить военную базу в Майнкрафт

Класс Progress предназначен для использования в качестве менеджера контекста, автоматически запускающего и останавливающего отображение прогресса.

import time from rich.progress import Progress with Progress() as progress: task1 = progress.add_task(«[red]Downloading. «, total=100) task2 = progress.add_task(«[green]Processing. «, total=100) task3 = progress.add_task(«[cyan]Installing. «, total=100) while not progress.finished: progress.update(task1, advance=0.9) progress.update(task2, advance=0.6) progress.update(task3, advance=0.3) time.sleep(0.02)

Как отобразить столбцы в Python с помощью Rich

Rich может отображать текст или другие визуализируемые объекты Rich в аккуратных столбцах с помощью класса Columns . Для использования, создайте экземпляр Columns с итерацией объектов рендеринга и выведите его в консоли.

Как отображать таблицы в Python с помощью Rich

Класс Table предлагает множество способов вывода табличных данных на терминал. Этот класс имеет методы add_column() и add_row() для добавления столбца и строки соответственно в экземпляр таблицы, созданный из класса Table .

Давайте создадим таблицу для нашего списка дел. В этой таблице будет три столбца – S.No., Задача и Статус.

from rich.console import Console from rich.table import Table table = Table(title=»Todo List») table.add_column(«S. No.», style=»cyan», no_wrap=True) table.add_column(«Task», style=»magenta») table.add_column(«Status», justify=»right», style=»green») table.add_row(«1», «Buy Milk», «✅») table.add_row(«2», «Buy Bread», «✅») table.add_row(«3», «Buy Jam», «❌») console = Console() console.print(table)

Подведение итогов

В этом уроке мы узнали, как использовать Rich для украшения терминала. Есть много других функций, которые поддерживает Rich. Подробнее о них читайте в официальной документации.

Не стесняйтесь экспериментировать с исходным кодом этой статьи здесь.

Источник: dev-gang.ru

Rich

Rich или Рич — это опасное существо которое появляется ночью и может превратиться во всё, что напугает игрока.

История

Я играл в Майнкрафт на новом мире с рандомным сидом. Когда была первая ночь почему-то я не мог скрафтить кровать, но у меня было много багов и я решил что это опять один из них. Тут за спиной раздал звук взрыва крипера, я подумал что всё, конец, но обернувшись увидел. ничего. В течение ночи мне казалось, что кто-то смотрит на меня. Но мне ни разу не удавалось увидеть владельца взгляда, но когда луна заходила за горизонт, я увидел что на её фоне издырявленного чёрного игрока с красными глазами.

Читайте также:  Как установить текстуры на Майнкрафт tlauncher

На следующую ночь я услышал голоса целой армии зомби прямо за дверью моего дома (я успел его сделать за день) и тут в чате появилось сообщение:

Error-1123 Game in 5 second

Я был в оцепенел от страха, у меня раньше не выдавал ошибку и тем более надо мною так не шутил миф. Тут на меня побежал Lick и прямо передо мной исчез. Я написал:

I’m Rich. I’ll FRIGHTEN YOU.

На меня посыпались разные мифы и как только они падали на меня они умирали, а чате писалось «Rich frighten you». От страха я покинул мир и удалил его, но оно не отстало от меня.

Начав искать похожие мифы я нашёл участника «ChessMaster07 was frighten Rich». Он был на Фэндоме с отключённым аккаунтом, но мог писать мне на стену обсуждения, очевидно никто больше этого не видел. Его первым сообщением было:

«Привет! Вот мы снова встретились. Кстати, ты довольно долго держался у меня на сиде, было прикольно. Ты молодец, но у тебя не получилось дожить до конца, так что ты умрёшь. »

После этого я сломал себе ноготь, папа меня наказал отлучив от компьютера и меня начали преследовать неудачи вроде плохого интернета, водителей-психов и т. п.

Источник: minecraftcreepypasta.fandom.com

Hot Rich открывает перед вами долгий путь при прохождении множества сюжетных миров с разными эпизодами с задачами, которые вам нужно будет решить.

Hot  Rich, игроки наверняка будут впечатлены количеством историй, которые может предложить эта игра. Стоит отметить, что в игре предлагаются истории с разными сюжетными сюжетами, и в этих историях предстоит долгое путешествие, которое игрокам необходимо будет преодолеть. Таким образом, они могут удовлетворить любого игрока, который любит рассказывать истории и проводит время, развлекаясь в мире историй.</p>
<p>Игроки могут отметить несколько историй в этой игре с довольно привлекательным сюжетом. My Bad Billionaire перенесет вас в интересную роль фальшивой жены рядом с богатым боссом, и вам решать, развивать с ним отношения или нет. Кроме того, «Любимая миллиардера» позволяет вам встретить красивого и богатого персонажа, но эти двое не хотят развивать отношения. Но этот персонаж начинает проявлять некоторую привязанность к вам.</p>
<p>Источник: <a href=amongusmod.ru