I have a while loop counting in centiseconds and printing the current_step var, always on the same line.
I want to run, for example,
x = True
while x is True:
    pass #printing timer to CLI here
print('this is more code running while the timer is still running')
input('Press enter to stop the timer')
x = False
#When x becomes False, I want the while loop to terminate
I know this must involve subprocess or something of the likes, but I don't know what direction to point myself in for learning to solve this issue.
Here is the function for reference:
def timer(stawt, stahp, step, time_step):
    from time import sleep
    stawt = int(stawt)
    stahp = int(stahp)
    if stahp < 1:
        stahp = 1
    elif stahp > 1000:
        stahp = 1000
    stahp = stahp * 100 + 1
    titerator = iter(range(stawt, stahp, step))
    while True:
        try:
            current_step = str(next(titerator))
            if int(current_step) < 99:
                final_time = '0' + current_step[:0] + '.' + current_step[0:] + 's'
                print('\r' + final_time, end='')
            elif int(current_step) < 999:
                final_time = current_step[:1] + '.' + current_step[1:] + 's'
                print('\r' + final_time, end='')
            elif int(current_step) < 9999:
                final_time = current_step[:2] + '.' + current_step[2:] + 's'
                print('\r' + final_time, end='')
            else:
                final_time = current_step[:3] + '.' + current_step[3:] + 's'
                print('\r' + final_time, end='')
            sleep(time_step)
        except:
            print(); break
    seconds = int((int(current_step) / 100) % 60)
    minutes = int((int(current_step) / 100) // 60)
    if minutes < 1:
        return ''
    else:
        final_time_human = str(minutes) + 'm ' + str(round(seconds)) + 's'
        print(final_time_human + '\n')
def MAIN():
    count_to = float(input('Enter max number of seconds to count:\n'))
    print()
    timer(0, count_to, 1, 0.01)
MAIN()
 
    