Learn to Code via Tutorials on Repl.it!

← Back to all posts
Add-ons to your Python code to make it better!
Bookie0 (4057)

Hello hello hello wassup people,

I’m just going to show you some quick things to make your Python code cool!

1) Screen Clearing

Screen clearing is very useful; you use it to, well, clear the screen. I like it a lot because you can use it to erase everything so that it looks better, and so that not too much text crowds the screen!

For the screen clearing, you need to just:


You can copy this code and put it every time you need to.
However, i prefer to create a function, so that i dont need to keep putting that (even if its just a few letters...):

def sc():

As you can see I called the function sc(),which stands for screen clear, so each time I want to clear the screen, i just call that function. It makes it just a bit shorter.
(Thanks to @ArjunSS1 for helping me with the screen clear)

2) Typewriter effect

Now this typewriter effect is super cool, because it makes the text print one letter at the time. You can regulate it so that it prints the text fast or slow.
First the imports:

import sys, os, curses
import time 

And this is the code:

st = 0.04
def sp(str):
  for letter in str:

I usually put it at 0.04because it prints it not too fast and not too slow. But you can change it. Just change the value after st

Each time you want to do this typewriter effect, just do:

sp(“Hello World”)


Hello World

3) While loops to go back to menu (very basic)

Personally, I’m not a pro in loops, but this is what I do sometimes. Imagine you want to do sort of menu option, like this:

print (“This is the menu”)
action1 = input(“Type hello for some greetings >  ”)
if action1 == “hello”:

So when the user types hello, several greetings will appear. But what if the user types something else by accident? Then, you could add an else statement, and saying something like “invalid”, and then the user could return to the menu,
This is how you do that:

back_to_menu = True

while back_to_menu == True:
     print (“This is the menu”)
     action1 = input(“Type “hello” for some greetings >  ”)
     if action1 == “hello”:
          print (“Hola”)
          print (“Bonjour”)
          print (“Aloha”)
           print (“You wrote something else than “hello”! ”)
           back_to_menu = True

So when you put back_to_menu = True at the end of the else statement, the user will arrive back at the menu!

4) Colors

This is how to make colors in Python.

Pretty simple, just copy paste these colors (because typing them would be to long...)

# colors
black = "\033[0;30m"
red = "\033[0;31m"
green = "\033[0;32m"
yellow = "\033[0;33m"
blue = "\033[0;34m"
magenta = "\033[0;35m"
cyan = "\033[0;36m"
white = "\033[0;37m"
bright_black = "\033[0;90m"
bright_red = "\033[0;91m"
bright_green = "\033[0;92m"
bright_yellow = "\033[0;93m"
bright_blue = "\033[0;94m"
bright_magenta = "\033[0;95m"
bright_cyan = "\033[0;96m"
bright_white = "\033[0;97m"

So to use it, just put the color before the text:

print(bright_yellow + “text here”)

This also works with the slowPrintI mentioned earlier

5) Some functions you can use

I always use these functions in my code because they are kinda like shortcuts. Less is more!

# for putting some space in between stuff
def space():

# prompt the user to press enter
def enter():
  input("Enter to continue\n> ")
# btw: \n is for another line

So that’s about it i know this tutorial isn’t very good, but I hope it helped you and you enjoyed it.
Lastly, nothing is under copyright, so go on and copy paste!

Tips, suggestions, questions, comments to let me know stuff, etc. Feel free to contact me!

ArjunSS1 (106)

Small things, good article but you could do these things

You can use os to clear the screen instead like os.system('clear') which clears the screen
For the typewriter there is an inbuilt argument in your print statement so instead of running sys.stdout.flush() you can just print(char, end='', flush=True)

Intead of running whille_back_to_menu = True you can just run while back_to_menu which is true so it will loop alternatively you can run while 1: which is True and you add a break statement to the if action1 == 'hello' block.

NoelB33 (314)

Also you can print a certain string to clear the screen also. @ArjunSS1

Bookie0 (4057)

Hey, thanks for commenting! I’m gonna change the screen clear and out your name for credit @ArjunSS1
Also for the typewriter I just put a function so that it’s shorter
For the back to menu, I know it can always loop back, but sometimes the user wants to just go to another thing instead of looping back.

But anyways thanks for the comments and remember,

PYer (3468)

Instead of doing while back_to_menu == True just do while back_to_menu. Also, instead of defining a hundred variables, why not make it into a dictionary. So instead of cyan do cls[´cyan´] it makes it more organized in my opinion. Also, with this system, it is easy to implement a function to change the color of an entire print statement:

def pc(t, c):
    print(cls[c] + t + cls[´white´])
Bookie0 (4057)

Ah ok then, thanks for the suggestions. For the while loop thing, I had made this like a while ago, so I didn’t know about what you suggested.

And for the colors, I had no idea how to do it; also I made it into variables so that it seemed a bit more easier, especially for beginners ;)
But thanks anyways @PYer

Leroy01010 (373)

do you want to be in our game as a character @Bookie0

Bookie0 (4057)

what game? also sure you can make me as a character ;) @Leroy01010

Leroy01010 (373)

we have an error can you please fix it @Bookie0

Bookie0 (4057)

ok repl link and i will join ;) @Leroy01010

JosephSanthosh (1192)

Ummm @Bookie0 how do i add the typewriter effect thing for inputs.
Such as how do I add it to this: "email=input("What is the email address:").strip()"
Where do I put 'sp1' in the input?

Bookie0 (4057)

yea i dont think you can add the typewriter effect to inputs...


JosephSanthosh (1192)

The screen clearer thing and the typewriter effect thing don't work with me. They say I have to define everything when I run it.

Bookie0 (4057)

hum, are you sure you imported the things before? also did you put it in a function? send a pic of ur code plz @JosephSanthosh

JosephSanthosh (1192)

Is there anyway you can add emoji's in inside a code?

Bookie0 (4057)

uh yea, just either copy from the internet or get it from the computer (dont know if its possible on PC tho) @JosephSanthosh

Nettakrim (388)

ansi stuff

\033[39m ends any color ANSI escape code (doesnt remove other stuff)

means you can do any rgb color

underlines text and
removes underline

you can do

import re
self.removeAnsi = re.compile(r'\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])')
print(self.removeAnsi.sub('', green+"hi"))

to remove ansi codes (for if you are doing len() with variables that have color etc)

you can make colors accessable from all functions like this

def func1():

def func2():

class colors():
  black = "\033[0;30m"
  red = "\033[0;31m"


is a usefull link for ansi escape codes, but quite a few dont work with the console

alternate way of clearing screen

also personally i prefer doing
to clear the screen as it is less flicker than


V this prints alot but doesnt flicker much (it also uses spacing1 but we arnt there yet)

end=x on print statements

wont create a new line

will print "cathello" or "doghello"

3 variations on spacing for menus

for printing menus these can be usefull

def spacing1(length,a,b):
  removeAnsi = re.compile(r'\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])')
  return a+(" "*(length-(len(removeAnsi.sub('',a))+len(removeAnsi.sub('',b))))+b)

def spacing2(length,a,b):
  return a+(" "*(length-(len(a)+len(b)))+b)

def spacing3(length,a,b,c):
  return a+(c*(length-(len(a)+len(b)))+b)

will output (in red for the first value and blue for the second)

hi   hello
cat    dog

as you can see they maintain a legnth of 10

is the same but it doesnt work with ansi for simplicity
but you can do
to print in one single color

hi   hello

print(spacing3(10,"hi,"hello"," ")
will print

hi   hello

on the type writer effect

personally i find it annoying, add an option to remove it on the main menu if you use it

classes (better global variables)

class hi():
  def __init__(self):
    #this is called when the class is initiated

  def hello(self):

  def hi(self,text):
    print(self.var+" "+self.hi)


will output

hello cat

multiple of the same class can exist at the same time like this


any variables that change based of input will be seperate to eachover, self.var in example1 can have a different value to self.var in example2

Warhawk947 (525)

In typewriter effect, you imported curses but didn't use it.
Good tutorial though!

Bookie0 (4057)

Oh, i just took it because in case.... i didn’t know
but thank you so much tho! @Warhawk947