For Döngüsünü Fonksiyona Çevirme

Aşağıdaki kodu başka bir değişken kullanarak tekrar tekrar çalıştıracağım için fonksiyona çevirmek istiyorum. Yardımcı olabilir misiniz.

    for j in range(0,2):
        tab_pist = driver.find_element(By.XPATH,
                                         "//img[@id='ctl00_ContentPlaceHolder1_ASPxPageControl1_cbGalopIstatistikPist_B-1Img']")
        ActionChains(driver).move_to_element(tab_pist).click().perform()
        sleep(3)
        sub_tab_pist = driver.find_element(By.XPATH,
                                             "//td[@id='ctl00_ContentPlaceHolder1_ASPxPageControl1_cbGalopIstatistikPist_DDD_L_LBI{}T0']".format(j))
        ActionChains(driver).move_to_element(sub_tab_pist).click().perform()  # Range aralığına göre Pist seçiyor tıklıyor.
        sleep(3)
        for i in range(4, 2, -1):
            say= 0
            tab_mesafe=driver.find_element(By.XPATH,
                    "//img[@id='ctl00_ContentPlaceHolder1_ASPxPageControl1_cbGalopIstatistikMesafe_B-1Img']")
            ActionChains(driver).move_to_element(tab_mesafe).click().perform()
            sleep(2)
            sub_tab_mesafe=driver.find_element(By.XPATH,
                    "//td[@id='ctl00_ContentPlaceHolder1_ASPxPageControl1_cbGalopIstatistikMesafe_DDD_L_LBI{}T0']".format(i))
            ActionChains(driver).move_to_element(sub_tab_mesafe).click().perform() #Range aralığına göre 1400-1200-1000-800-600-400 e tıklıyor.
            sleep(2)
            tablo = driver.find_elements(By.XPATH,
                    "//tr[contains(@id,'ctl00_ContentPlaceHolder1_ASPxPageControl1_grdGalopIstatistik_DXDataRow')]//descendant::td")#mesafeye göre açılan tablodaki bilgileri çekiyor
            for i in tablo:
                if has_pattern(i.text, "^[0-9]{2}/[0-9]{2}$"):
                    say += 1
                    text = f"{say}-{i.text}"
                else:
                    text = i.text
                TABLO.append(text)
            sleep(2)
tablo_duzenleme=[TABLO[x:x+10] for x in range(0, len(TABLO), 10)]
df=pd.DataFrame(tablo_duzenleme, columns=["Tarih","Atadı","Şehir","1200+","1000","800","600","400","G.K","İdman_Jokeyi"])
print(df)

Kütüphanenin fonksiyon içinde olmasına gerek yok. Kodun tamamı bu mu ? Fonksiyon kullanmayı bilmediğini düşünürsem, class da kullanmıyorsundur. Yazdığın kodun ne yaptığını anlamak için kafa yormadım. Kısaca örnek vereyim.

import time
def galop_click_on_tur():
    for i in range(3):
        time.sleep(1)
        print(i)
    galop_click_on_tur()
galop_click_on_tur()
import time

def galop_click_on_tur(argümanı_aldım):
    for i in range(3):
        time.sleep(1)
        print(argümanı_aldım, i)
    galop_click_on_tur("programın tekrar başlaması için fonksiyonu çağırıyorum ve argüman gönderiyorum")
galop_click_on_tur("programın başlatıyorum ve argüman gönderiyorum")