Bogate dane wyjściowe terminala
Stylizuj dane wyjściowe CLI za pomocą rich
Bogate dane wyjściowe terminala to bezpłatna lekcja Python Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Python Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Python Academy zawiera 4 lekcji w sumie.
Czym jest rich?
rich to zewnętrzna biblioteka służąca do tworzenia atrakcyjnych danych wyjściowych terminala: kolorów, stylów, tabel, pasków postępu i nie tylko. Należy zainstalować ją poleceniem pip install rich.
from rich import print
print('Hello, [bold magenta]world[/bold magenta]!')Obiekt Console
Centralną klasą jest Console. Jej metoda print rozumie znaczniki stylów i obsługuje zawijanie tekstu oraz wykrywanie kolorów.
from rich.console import Console
console = Console()
console.print('Styled output here')
Znaczniki stylów
rich używa znaczników w nawiasach kwadratowych, takich jak [bold], [red] i [italic], aby stylować fragmenty tekstu w wierszu. Fragment zamyka się pasującym znacznikiem.
from rich.console import Console
console = Console()
console.print('[bold red]Error:[/bold red] something failed')
console.print('[green]Success[/green]')
Argument style
Zamiast znaczników można przekazać argument style, który zastosuje styl do całego wiersza.
from rich.console import Console
console = Console()
console.print('Important notice', style='bold yellow on blue')
Tabele
Klasa Table wyświetla estetyczne tabele z obramowaniem. Należy dodać kolumny, następnie wiersze, a potem wyświetlić tabelę.
from rich.console import Console
from rich.table import Table
table = Table(title='Users')
table.add_column('Name')
table.add_column('Age')
table.add_row('Ana', '30')
table.add_row('Bob', '25')
Console().print(table)
Panele
Obiekt Panel rysuje ramkę wokół treści. Przydaje się do wyróżniania komunikatów lub grupowania danych wyjściowych.
from rich.console import Console
from rich.panel import Panel
Console().print(Panel('All systems go', title='Status'))
Paski postępu
rich może wyświetlać paski postępu aktualizowane na bieżąco. track() opakowuje dowolny obiekt iterowalny i wyświetla postęp w miarę przetwarzania jego elementów.
from rich.progress import track
import time
for _ in track(range(5), description='Working'):
time.sleep(0.1)
Estetyczne wyświetlanie danych
console.print wyświetla słowniki i listy z kolorowaniem składni oraz wcięciami, dzięki czemu są one znacznie czytelniejsze niż przy użyciu zwykłego print.
from rich.console import Console
data = {'name': 'Ana', 'roles': ['admin', 'user'], 'active': True}
Console().print(data)
Logowanie i ślady stosu
rich oferuje czytelniejsze ślady stosu za pomocą rich.traceback.install() oraz procedury obsługi logowania, dzięki czemu dane wyjściowe błędów są znacznie łatwiejsze do odczytania.
from rich.traceback import install
install()
# Now uncaught exceptions print with rich, colorized formatting
Reguły i układ
console.rule() rysuje poziomy separator z opcjonalnym tytułem, co przydaje się do dzielenia długich danych wyjściowych na sekcje.
from rich.console import Console
console = Console()
console.rule('[bold]Report[/bold]')
console.print('section content')
Łączenie rich z Click
rich dobrze współpracuje z Click: Click porządkuje polecenia, a rich styluje dane wyjściowe, dzięki czemu interfejsy wiersza poleceń zyskują dopracowany, profesjonalny wygląd.
import click
from rich.console import Console
console = Console()
@click.command()
@click.argument('name')
def hello(name):
console.print('Hello [bold]' + name + '[/bold]!')
Szybki sprawdzian
Sprawdź swoje zrozumienie biblioteki rich.
Podsumowanie
Poznałeś stylowanie danych wyjściowych terminala za pomocą rich:
- Obiekt
Consolewyświetla tekst za pomocą znaczników stylów w nawiasach kwadratowych oraz argumentustyle. Table,Paneliruleporządkują dane wyjściowe, atrackpokazuje postęp.- rich estetycznie wyświetla dane i poprawia wygląd śladów stosu.
- Jest to zewnętrzna biblioteka, która dobrze współpracuje z Click.
Ukończyłeś kurs narzędzi wiersza poleceń!
Często zadawane pytania
Czy lekcja „Bogate dane wyjściowe terminala” jest bezpłatna?
Tak — pełny tekst „Bogate dane wyjściowe terminala” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Python Academy, przejdź na CoddyKit PRO. Kurs Python Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Bogate dane wyjściowe terminala”?
Stylizuj dane wyjściowe CLI za pomocą rich Ćwiczysz Python Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Python Academy?
Nie wymagamy żadnego doświadczenia. Python Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Bogate dane wyjściowe terminala”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Python Academy?
Tak. Każda lekcja Python Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Podstawy argparse
- Podkomendy i opcje
- Biblioteka Click
- Bogate dane wyjściowe terminala