To interpret your description literally, you need to put a print statement before calling func2() .
However, I assume that you really want func2() do a background job that allows func1() to return immediately and not wait for func2() to complete its execution. To do this, you need to create a thread to run func2() .
import time import threading def func1(): t = threading.Thread(target=func2) t.start() print("Do stuff here") def func2(): time.sleep(10) print("Do more stuff here") func1() print("func1 has returned")
source share