Как в Python при завершении цикла вернуть действие на определённую строку

Например, я сделал камень ножницы бумага в Python, и я хочу, чтобы при завершении игры код и цикл не заканчивались, а переходили на строчку, где пользователю дают выбор предмета

import random
rock = 1
scissors = 2
paper = 3
print("Выберите: 1 - камень. 2 - ножницы. 3 - бумага")
human_decided = int(input())
ai_decided = random.randint(1, 3)
if human_decided == ai_decided:
    print("Draw!")
if human_decided == 1 and ai_decided == 2:
    print("You win in Rock vs Scissors!")
if human_decided == 1 and ai_decided == 3:
    print("You lose in Rock vs Paper!")
if human_decided == 2 and ai_decided == 1:
    print("You lose!")
if human_decided == 2 and ai_decided == 3:
    print("You win!")
if human_decided == 3 and ai_decided == 1:
    print("You win!")
if human_decided == 3 and ai_decided == 2:
    print("You lose!")```

и чтобы код возвращался на выбор предмета

Ответы (1 шт):

Автор решения: Alexey Trukhanov

Если Вы на самом деле хотите, чтобы цикл был бесконечным, то перед первым print надо поставить while True: (не забудьте весь остальной блок сдвинуть вправо)

import random
rock = 1
scissors = 2
paper = 3
while True:
    print("Выберите: 1 - камень. 2 - ножницы. 3 - бумага")
    human_decided = int(input())
    ai_decided = random.randint(1, 3)
    if human_decided == ai_decided:
        print("Draw!")
    if human_decided == 1 and ai_decided == 2:
        print("You win in Rock vs Scissors!")
    if human_decided == 1 and ai_decided == 3:
        print("You lose in Rock vs Paper!")
    if human_decided == 2 and ai_decided == 1:
        print("You lose!")
    if human_decided == 2 and ai_decided == 3:
        print("You win!")
    if human_decided == 3 and ai_decided == 1:
        print("You win!")
    if human_decided == 3 and ai_decided == 2:
        print("You lose!")

Но лучше предусмотреть выход из цикла, например, по вводу любого символа, кроме 1, 2, 3, как-то так:

import random
rock = 1
scissors = 2
paper = 3
while (human_decided := input("Выберите: 1 - камень. 2 - ножницы. 3 - бумага: ")) in ('1', '2', '3'):
    human_decided = int(human_decided)
    ai_decided = random.randint(1, 3)
    if human_decided == ai_decided:
        print("Draw!")
    if human_decided == 1 and ai_decided == 2:
        print("You win in Rock vs Scissors!")
    if human_decided == 1 and ai_decided == 3:
        print("You lose in Rock vs Paper!")
    if human_decided == 2 and ai_decided == 1:
        print("You lose!")
    if human_decided == 2 and ai_decided == 3:
        print("You win!")
    if human_decided == 3 and ai_decided == 1:
        print("You win!")
    if human_decided == 3 and ai_decided == 2:
        print("You lose!")
→ Ссылка