beginner – Text-based Tic Tac Toe in Python (First Project)

I’ve recently started learning Python again after a long time away from it and doing MATLAB at university. Today, I spent some time working on a first little project of mine. Right now it works as it should minus ending the game when all the fields are full. I would love to get advice on how I could improve the code and would like to fix any bad habits early on in learning.

    mapA = ((" ", "|", " ", "|", " "),
            (" ", "|", " ", "|", " "),
            (" ", "|", " ", "|", " "))

    def printMap():
        # prints out the map
        map = ("".join(mapA(0)),
               "".join(mapA(1)),
               "".join(mapA(2)))
        print(map(0))
        print(map(1))
        print(map(2))

        # makes a list of just the fields with x and o
        mapB = (map(0).split("|"),
                map(1).split("|"),
                map(2).split("|"))

        for x in range(3): # converts the board to numbers
            for y in range(3):
                if mapB(x)(y) == "X":
                    mapB(x)(y) = 1
                elif mapB(x)(y) == "O":
                    mapB(x)(y) = -1
                elif mapB(x)(y) == " ":
                    mapB(x)(y) = 0

        for x in range(3):
            if abs(sum(mapB(x))) == 3: # checks for full rows
                return "END"
            elif abs(int(mapB(0)(x)) + int(mapB(1)(x)) + int(mapB(2)(x))) == 3: # checks for full columns
                return "END"
        if abs(int(mapB(0)(0)) + int(mapB(1)(1)) + int(mapB(2)(2))) == 3: # checks for full right diagonal
            return "END"
        elif abs(int(mapB(0)(2)) + int(mapB(1)(1)) + int(mapB(2)(0))) == 3: # checks for full left diagonal
            return "END"
        counter = 0


    def choice(): # allows the user to choose O or X
        print("O or X?")
        symbol = input().lower() # case insensitive
        if symbol == "o":
            return ("O", "X")
        elif symbol == "x":
            return ("X", "O")
        else:
            print("Invalid symbol")
            return choice() # restarts the function if the user input neither O nor X

    def placement(symbol):
        print("Place " + symbol + " in form: rowNumber columnNumber")
        x = input()
        coordinates = x.split(" ")
        while len(coordinates) != 2 or coordinates(0).isnumeric() != True or coordinates(1).isnumeric() != True:
            print("Invalid input.")
            print("Place " + symbol + " in form: rowNumber columnNumber")
            x = input()
            coordinates = x.split(" ")
        while mapA(int(coordinates(0)) - 1)(int(coordinates(1)) * 2 - 2) != " ":
            if mapA(int(coordinates(0)) - 1)(int(coordinates(1)) * 2 - 2) != " ":
                print("That space is taken.")
            else:
                print("Invalid input.")

            print("Place " + symbol + " in form: rowNumber columnNumber")
            x = input()
            coordinates = x.split(" ")

        if coordinates(0) == "1" and coordinates(1) == "1":
            mapA(0)(0) = symbol
        elif coordinates(0) == "1" and coordinates(1) == "2":
            mapA(0)(2) = symbol
        elif coordinates(0) == "1" and coordinates(1) == "3":
            mapA(0)(4) = symbol
        elif coordinates(0) == "2" and coordinates(1) == "1":
            mapA(1)(0) = symbol
        elif coordinates(0) == "2" and coordinates(1) == "2":
            mapA(1)(2) = symbol
        elif coordinates(0) == "2" and coordinates(1) == "3":
            mapA(1)(4) = symbol
        elif coordinates(0) == "3" and coordinates(1) == "1":
            mapA(2)(0) = symbol
        elif coordinates(0) == "3" and coordinates(1) == "2":
            mapA(2)(2) = symbol
        elif coordinates(0) == "3" and coordinates(1) == "3":
            mapA(2)(4) = symbol
        return printMap()

    symbol = choice()
    printMap()
    end = ""

    while end != "END":

        end = placement(symbol(0))

        if end == "END":
            print("Game Finished")
            break
        end = placement(symbol(1))
        if end == "END":
            print("Game Finished")
            break


tictac()