In this article, we'll learn about a powerful library for Python called Rich. Rich is a Python library for writing
rich text (with color and style) to the terminal. It lets you display advanced content such as tables, markdown, and syntax-highlighted code. So, why is this useful? Well, if you're not using a tool like Rich, the output of your code on the terminal can be a little boring and difficult to understand. If you want to make it clearer and prettier, you probably want to use Rich – and you've come to the right place to learn how to do it. You can install Rich with pip as: To know what all Rich can do, you can type the following command in the terminal: Now you can see that we can do quite a lot of things with Rich. Let's try a few of them out to see how they work. Rich has the
capability to highlight the output according to the datatype. We'll import the alternative To avoid confusion with the built-in
Output: Do you see how the different data types are highlighted with different colors? This can help us a lot while debugging. How to Rich inspect in PythonIf you use the built-in
Output: Rich has an
Output: How to style your console with RichFor
complete control over terminal formatting, Rich offers a Let's write a function to merge Python dictionaries.
Output: In the above example, we have used the There are several other methods such as How to use Tree in RichRich has a Let's see an example by creating a family tree:
Output: Once we create an instance of the In the official documentation, we have a tree.py file that outputs the file structure using Tree. The output looks like this: How to display a progress bar using RichRich can show continuously updated information about the status of long-running tasks, file copies, and so forth. You can customize this information, too. By default, it provides a description of the 'task,' a progress bar, percentage complete, and anticipated time left. Multiple tasks are supported with a rich progress display, each with a bar and progress statistics. You can use this to keep track of several jobs that are being worked on in threads or processes. Let's first try
the
Output: If we want to record the time when a particular task is finished executing, we can use
You can work directly with the Progress class if you need several tasks in the display or want to customize the columns in the progress display. After you've created a Progress object, use ( The Progress class is intended to be used as a context manager, automatically starting and stopping the progress display.
Output: How to display Rich Columns in PythonRich can render text or other Rich renderables in neat columns with the
Output: How to display Rich tables in PythonRich’s Let's create a table for our todo list. This table will have three columns – S.No., Task, and Status.
Output: Wrapping UpIn this tutorial, we learned how to use Rich to beautify the terminal. There are lots of other features that Rich supports. Learn more about them in the official documentation. Feel free to fork and play with the source code of this article here. Thanks for reading! Subscribe to my newsletterLearn to code for free. freeCodeCamp's open source curriculum has helped more than 40,000 people get jobs as developers. Get started |