XOX oyunum doğru çalışmıyor

Merhaba pythona yeni başladım giriş seviyesinde bilgiye sahibim.
yapay zekaya karşı oynadığımız bir X-O-X oyunu yaptım.
oyunda önce siz oynuyorsunuz sonra yapay zeka devreye giriyor ve sırasıyla şu adımları uyguluyor.

  1. kazanabileceği bir durum olup olmadığına bakıyor
  2. eğer varsa buna göre oynayıp oyunu kazanıyor
  3. eğer yoksa kaybedebileceği bir durum varsa buna göre oynuyor
  4. eğer o da yoksa rastgele oynuyor
    olması gereken buydu ama yapay zeka 3. adımı uygulamıyor
    kodun okunmasının zor olduğunun farkındayım ama yardımcı olursanız sevinirim.
#İmport işleri
import random
from os import system
#def işleri
xoxmap = [ "", "_", "_", "_", "_", "_", "_", "_", "_", "_" ]

#O kazandımı
def xoxOwinconds():
    xoxsatıratlama = -3
    xoxsütunatlama = -1
    for asdr in range(1, 4):
        
        xoxsatıratlama += 3
        xoxsütunatlama += 1
        
        if xoxmap[1+xoxsatıratlama] == "O" and xoxmap[2+xoxsatıratlama] == "O" and xoxmap[3+xoxsatıratlama] == "O":
            system("cls")
            xoxprintmap()
            print("O kazandı")
            input()
            raise

        if xoxmap[1+xoxsütunatlama] == "O" and xoxmap[4+xoxsütunatlama] == "O" and xoxmap[7+xoxsütunatlama] == "O":
            system("cls")
            xoxprintmap()
            print("O kazandı")
            input()
            raise

        if xoxmap[1] == "O" and xoxmap[5] == "O" and xoxmap[9] == "O" or xoxmap[3] == "O" and xoxmap[5] == "O" and xoxmap[7] == "O" :
            system("cls")
            xoxprintmap()
            print("O kazandı")
            input()
            raise


#X kazandımı
def xoxXwinconds():
    xoxsatıratlama = -3
    xoxsütunatlama = -1
    for asdr in range(1, 4):
        
        xoxsatıratlama += 3
        xoxsütunatlama += 1
        
        if xoxmap[1+xoxsatıratlama] == "X" and xoxmap[2+xoxsatıratlama] == "X" and xoxmap[3+xoxsatıratlama] == "X":
            system("cls")
            xoxprintmap()
            print("X kazandı")
            input()
            raise

        if xoxmap[1+xoxsütunatlama] == "X" and xoxmap[4+xoxsütunatlama] == "X" and xoxmap[7+xoxsütunatlama] == "X":
            system("cls")
            xoxprintmap()
            print("X kazandı")
            input()
            raise

        if xoxmap[1] == "X" and xoxmap[5] == "X" and xoxmap[9] == "X" or xoxmap[3] == "X" and xoxmap[5] == "X" and xoxmap[7] == "X" :
            system("cls")
            xoxprintmap()
            print("X kazandı")
            input()
            raise

    
#Harita çizme
def xoxprintmap():
    print(14*"-")
    print("|", xoxmap[1], "|", xoxmap[2], "|", xoxmap[3], "|")
    print(14*"-")
    print("|", xoxmap[4], "|", xoxmap[5], "|", xoxmap[6], "|")
    print(14*"-")
    print("|", xoxmap[7], "|", xoxmap[8], "|", xoxmap[9], "|")
    print(14*"-")

#Nasıl oynanır haritası çizme
def xoxprinthtp():
    print(14*"-")
    print("|", 1, "|", 2, "|", 3, "|")
    print(14*"-")
    print("|", 4, "|", 5, "|", 6, "|")
    print(14*"-")
    print("|", 7, "|", 8, "|", 9, "|")
    print(14*"-")

    

while True:
    
    #kullanıcı hamlesi
    xoxOwinconds()
    while True:
        system("cls")
        xoxprinthtp()
        xoxprintmap()

        oyuncuhamle=input("\n\nSıra sizde:")


        if oyuncuhamle == "1":
            if xoxmap[1] == "_":
                xoxmap[1] = "X"
                break

            else:
                print("Lütfen geçerli bir hamle girin")



        if oyuncuhamle == "2":
            if xoxmap[2] == "_":
                xoxmap[2] = "X"
                break

            else:
                print("Lütfen geçerli bir hamle girin")



        if oyuncuhamle == "3":
            if xoxmap[3] == "_":
                xoxmap[3] = "X"
                break
            
            else:
                print("Lütfen geçerli bir hamle girin")




        if oyuncuhamle == "4":
            if xoxmap[4] == "_":
                xoxmap[4] = "X"
                break

            else:
                print("Lütfen geçerli bir hamle girin")



        if oyuncuhamle == "5":
            if xoxmap[5] == "_":
                xoxmap[5] = "X"
                break

            else:
                print("Lütfen geçerli bir hamle girin")



        if oyuncuhamle == "6":
            if xoxmap[6] == "_":
                xoxmap[6] = "X"
                break

            else:
                print("Lütfen geçerli bir hamle girin")



        if oyuncuhamle == "7":
            if xoxmap[7] == "_":
                xoxmap[7] = "X"
                break

            else:
                print("Lütfen geçerli bir hamle girin")



        if oyuncuhamle == "8":
            if xoxmap[8] == "_":
                xoxmap[8] = "X"
                break

            else:
                print("Lütfen geçerli bir hamle girin")



        if oyuncuhamle == "9":
            if xoxmap[9] == "_":
                xoxmap[9] = "X"
                break

            else:
                print("Lütfen geçerli bir hamle girin")




        else:
            print("Lütfen geçerli bir hamle girin")
            


    #yapay zeka hamlesi
    xoxXwinconds()
    while True:

    #O kazanabilirmi
        
        for asdr in range(1, 4):
            
            if asdr == 1:
                #yanyana
                if xoxmap[1] == "O" and xoxmap[2] == "O" :
                    oyuncuhamle = 3

                elif xoxmap[2] == "O" and xoxmap[3] == "O" :
                    oyuncuhamle = 1

                elif xoxmap[1] == "O" and xoxmap[3] == "O" :
                    oyuncuhamle = 2
                    
                #üstüste
                elif xoxmap[1] == "O" and xoxmap[4] == "O" :
                    oyuncuhamle = 7

                elif xoxmap[4] == "O" and xoxmap[7] == "O" :
                    oyuncuhamle = 1

                elif xoxmap[1] == "O" and xoxmap[7] == "O" :
                    oyuncuhamle = 4



            if asdr == 2:
                #yanyana
                if xoxmap[4] == "O" and xoxmap[5] == "O" :
                    oyuncuhamle = 6

                elif xoxmap[5] == "O" and xoxmap[6] == "O" :
                    oyuncuhamle = 4

                elif xoxmap[4] == "O" and xoxmap[6] == "O" :
                    oyuncuhamle = 5
                    
                #üstüste
                elif xoxmap[2] == "O" and xoxmap[5] == "O" :
                    oyuncuhamle = 8

                elif xoxmap[5] == "O" and xoxmap[8] == "O" :
                    oyuncuhamle = 2

                elif xoxmap[2] == "O" and xoxmap[8] == "O" :
                    oyuncuhamle = 5



            if asdr == 3:
                #yanyana
                if xoxmap[7] == "O" and xoxmap[8] == "O" :
                    oyuncuhamle = 9

                elif xoxmap[8] == "O" and xoxmap[9] == "O" :
                    oyuncuhamle = 7

                elif xoxmap[7] == "O" and xoxmap[9] == "O" :
                    oyuncuhamle = 8
                    
                #üstüste
                elif xoxmap[3] == "O" and xoxmap[6] == "O" :
                    oyuncuhamle = 9

                elif xoxmap[6] == "O" and xoxmap[9] == "O" :
                    oyuncuhamle = 3

                elif xoxmap[3] == "O" and xoxmap[9] == "O" :
                    oyuncuhamle = 6


            #çapraz
            elif xoxmap[1] == "O" and xoxmap[5] == "O" :
                oyuncuhamle = 9

            elif xoxmap[3] == "O" and xoxmap[5] == "O" :
                oyuncuhamle = 7

            elif xoxmap[7] == "O" and xoxmap[5] == "O" :
                oyuncuhamle = 3

            elif xoxmap[9] == "O" and xoxmap[5] == "O" : 
                oyuncuhamle = 1

            else:
                #X kazanabilirmi
                if asdr == 1:
                    #yanyana
                    if xoxmap[1] == "X" and xoxmap[2] == "X" :
                        oyuncuhamle = 3

                    elif xoxmap[2] == "X" and xoxmap[3] == "X" :
                        oyuncuhamle = 1

                    elif xoxmap[1] == "X" and xoxmap[3] == "X" :
                        oyuncuhamle = 2
                        
                    #üstüste
                    elif xoxmap[1] == "X" and xoxmap[4] == "X" :
                        oyuncuhamle = 7

                    elif xoxmap[4] == "X" and xoxmap[7] == "X" :
                        oyuncuhamle = 1

                    elif xoxmap[1] == "X" and xoxmap[7] == "X" :
                        oyuncuhamle = 4



                if asdr == 2:
                    #yanyana
                    if xoxmap[4] == "X" and xoxmap[5] == "X" :
                        oyuncuhamle = 6

                    elif xoxmap[5] == "X" and xoxmap[6] == "X" :
                        oyuncuhamle = 4

                    elif xoxmap[4] == "X" and xoxmap[6] == "X" :
                        oyuncuhamle = 5
                        
                    #üstüste
                    elif xoxmap[2] == "X" and xoxmap[5] == "X" :
                        oyuncuhamle = 8

                    elif xoxmap[5] == "X" and xoxmap[8] == "X" :
                        oyuncuhamle = 2

                    elif xoxmap[2] == "X" and xoxmap[8] == "X" :
                        oyuncuhamle = 5



                if asdr == 3:
                    #yanyana
                    if xoxmap[7] == "X" and xoxmap[8] == "X" :
                        oyuncuhamle = 9

                    elif xoxmap[8] == "X" and xoxmap[9] == "X" :
                        oyuncuhamle = 7

                    elif xoxmap[7] == "X" and xoxmap[9] == "X" :
                        oyuncuhamle = 8
                        
                    #üstüste
                    elif xoxmap[3] == "X" and xoxmap[6] == "X" :
                        oyuncuhamle = 9

                    elif xoxmap[6] == "X" and xoxmap[9] == "X" :
                        oyuncuhamle = 3

                    elif xoxmap[3] == "X" and xoxmap[9] == "X" :
                        oyuncuhamle = 6


                #çapraz
                elif xoxmap[1] == "X" and xoxmap[5] == "X" :
                    oyuncuhamle = 9

                elif xoxmap[3] == "X" and xoxmap[5] == "X" :
                    oyuncuhamle = 7

                elif xoxmap[7] == "X" and xoxmap[5] == "X" :
                    oyuncuhamle = 3

                elif xoxmap[9] == "X" and xoxmap[5] == "X" : 
                    oyuncuhamle = 1

                else:
                    oyuncuhamle = random.randrange(1, 10)



        oyuncuhamle = str(oyuncuhamle)


        #Yapay zeka hangi hamlyi yaptı
        if oyuncuhamle == "1":
            if xoxmap[1] == "_":
                xoxmap[1] = "O"
                break

            else:
                pass

        if oyuncuhamle == "2":
            if xoxmap[2] == "_":
                xoxmap[2] = "O"
                break

            else:
                pass



        if oyuncuhamle == "3":
            if xoxmap[3] == "_":
                xoxmap[3] = "O"
                break
            
            else:
                pass




        if oyuncuhamle == "4":
            if xoxmap[4] == "_":
                xoxmap[4] = "O"
                break

            else:
                pass



        if oyuncuhamle == "5":
            if xoxmap[5] == "_":
                xoxmap[5] = "O"
                break

            else:
                pass



        if oyuncuhamle == "6":
            if xoxmap[6] == "_":
                xoxmap[6] = "O"
                break

            else:
                pass



        if oyuncuhamle == "7":
            if xoxmap[7] == "_":
                xoxmap[7] = "O"
                break

            else:
                pass



        if oyuncuhamle == "8":
            if xoxmap[8] == "_":
                xoxmap[8] = "O"
                break

            else:
                pass



        if oyuncuhamle == "9":
            if xoxmap[9] == "_":
                xoxmap[9] = "O"
                break

            else:
               pass 




        else:
            pass

sorunu çözdüm ama bu seferde başka bir hata çıktı bunun için yeni konu açtım