يوجد العديد من الطرق في بايثون يمكن من خلالها تنفيذ دالة كل مدة معينة تحددها أنت مسبقا، فيمكنك مثلا في نهاية دالة foo() أن تنشئ Timer والذي سيستدعي foo() نفسها كل 10 ثواني لأن دالة Timer ستنشئ خيط جديد لاستدعاء foo() وفي هذه الحالة يمكنك القيام بأشياء الأخرى في نفس الوقت. مثال على كيفية استخدام دالة Timer من وحدة threading (لاحظ أن الوقت الذي مررناه بالثواني): >>> import time, threading
>>> def foo():
... print(time.ctime())
... threading.Timer(10, foo).start()
...
>>> foo()
Thu Dec 22 14:46:08 2011
>>> Thu Dec 22 14:46:18 2011
Thu Dec 22 14:46:28 2011
Thu Dec 22 14:46:38 2011