Вы можете использовать параллельное выполнение задач для достижения того, что вы собираетесь делать, Посмотрите на код, который поможет вам лучше понять параллельное программирование,
import time
from concurrent import futures
def busy():
print("\nRunning in seprate thread")
print("\nTask started")
time.sleep(5)
print("\nTask accomplished")
def main():
executor = futures.ThreadPoolExecutor()
executor.submit(busy)
for i in range(100):
print("\nRunning in main thread")
time.sleep(1)
executor.shutdown() # --> wait for all the tasks to get finished
main()