Не могу решить: проверка корректности ввода в Python
Доброго времени суток. Пишу "крестики нолики" и не могу решить следующую проблему: Х или О вводится в поле путём введения координат по горизонтали и вертикали от 1 до 3. Я пытаюсь сделать проверку на корректность ввода символов, но не могу добится правильно работы функции. В идеале она должна запрашивать координаты до тех пор, пока не получит цифры (1, 2, 3) В чём моя ошибка?
def coords():
try:
horizontal = int(input("Точка по горизонтали: "))
vertical = int(input("Точка по вертикали: "))
while horizontal != 1 or horizontal != 2 or horizontal != 3\
and vertical != 1 or vertical != 2 or vertical != 3:
print("Вы ввели неправильные координаты, попробуйте снова")
try:
horizontal = int(input("!Точка по горизонтали: "))
vertical = int(input("!Точка по вертикали: "))
except ValueError:
horizontal = 0
vertical = 0
except ValueError:
horizontal = 0
vertical = 0