Get to Know the Rich Console
  
    00:00
  
  
  The Rich Console. As you’ve already seen, Rich can override print(), giving extra functionality. But the preferred way to use Rich is to initialize a Console object and use it for printing.
  
    00:26
  
  
  Again, this will output Rich in bold and red. Another useful console method is .rule(), which creates a rule across the width of the console.
00:41 By default, Rich will use the full width of your current window, but you can create a console with a fixed width if you want to control the layout more closely.
  
    00:53
  
  
  Now, the same .rule() call leads to a narrower rule on screen. One way you’ll use Rich to make your game look better is by clearing the screen between guesses. You do this with console.clear().
  
    01:10
  
  
  Add the code seen on-screen. First, you need to import rich and initialize a Console object at the top of the code with a width of 40.
  
    01:28
  
  
  In the refresh_page() function, console.clear() will clear the screen, then console.rule() will print a headline at the top of the screen.
  
    01:44
  
  
  One neat feature of Rich is that you can add custom styles. As an example, you can add a style to warn the user that they’ve done something wrong. You do this by instantiating Theme and passing it to Console. This
  
    02:08
  
  
  adds warning as a new style that will display as red text on a yellow background. Here, the code is run in the standard Python REPL, as bpython doesn’t play well when Rich clears the console.
  
    02:24
  
  
  First, refresh_page() is tested, and you can see that it clears the screen before the Wyrdl headline is printed. Next, Look at me! is printed with the warning style, red text on a yellow background.
02:40 Now that you have some skills at working with Rich, in the next section of the course, you’ll start using Rich to color-code some of the game’s output.
Become a Member to join the conversation.
