I'm sure you've seen projects that print out strings slowly instead of all at once. Today i'll show you how. Here is the code:
def slowtype(str):
newstr = ""
strcount = 0
clearcheck = 0
for element in str:
strcount = strcount + 1
for element in str:
newstr = newstr + element
print(newstr)
time.sleep(0.05)
clearcheck = clearcheck + 1
if(strcount == clearcheck):
break
else:
os.system('clear')
Lets brake it down:
first, the function accepts a string. Then, it makes 2 integers. strcount, which measures the length of the string, and clearcheck, which helps later. To figure out how long the string is, it iterates over each character in a string. Then, it moves to the second loop where the loop adds each character to a string, prints the string, increases clearcheck by 1, sleeps for 0.05 seconds, then checks if strcount is equal to clearcheck. If it is, it doesn't clear the screen. If it isn't, it clears and repeats. This used as a function will give a nice slowtype function to python code!
@Bookie0 My version, with easier usage and scoping:
def sp(string, delay=False):
if not delay:
delay = sp.DELAY
import time
for letter in string:
print(letter, end='', flush=True)
time.sleep(delay)
print()
sp.DELAY = 0.04
Usage:
sp("Hello, world") # at 0.04s delay
sp.DELAY = 0.3
sp("Hello, world") # at 0.3s delay
sp("Hello, world", 0.1) # at 0.1s delay
sp("Hello, world") # back to 0.3s delay
EDIT: Just noticing this is similar to what @RahulChoubey1 said. Keeping this around just for the scoping mechanism though.
Slowtyping in Python
I'm sure you've seen projects that print out strings slowly instead of all at once. Today i'll show you how. Here is the code:
Lets brake it down:
first, the function accepts a string. Then, it makes 2 integers. strcount, which measures the length of the string, and clearcheck, which helps later. To figure out how long the string is, it iterates over each character in a string. Then, it moves to the second loop where the loop adds each character to a string, prints the string, increases clearcheck by 1, sleeps for 0.05 seconds, then checks if strcount is equal to clearcheck. If it is, it doesn't clear the screen. If it isn't, it clears and repeats. This used as a function will give a nice slowtype function to python code!
Here's an example:
@Bookie0 My version, with easier usage and scoping:
Usage:
EDIT: Just noticing this is similar to what @RahulChoubey1 said. Keeping this around just for the scoping mechanism though.