Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Match "int ou stg"?

No caso do Match não precisamos informar que o "1, 2, 3..." se trata de um stg ou int??

1 resposta
solução!

Oii Luiz, tudo bem?

No exemplo do para saber mais, a variável opcao_escolhida tá recebendo um valor inteiro por meio da função int(input('Escolha uma opção: ')). Então, quando usamos a instrução match, ela está comparando esse valor inteiro com os números inteiros nos blocos case.

Se, em vez disso, tivéssemos uma situação em que opcao_escolhida fosse uma string, poderíamos compará-la com strings nos blocos case. Assim por exemplo:

opcao_escolhida = input('Escolha uma opção: ')
match opcao_escolhida:
    case '1':
        print('Adicionar restaurante')
    case '2':
        print('Listar restaurantes')
    case '3':
        print('Ativar restaurante')
    case '4':
        print('Finalizar app')
    case _:
        print('Opção inválida!')

Assim, estamos comparando uma string com strings. Então, o tipo de dado que você está comparando no match depende do tipo de dado que você está recebendo na entrada e do tipo de dado que você está usando nos blocos case.

Um abraço e bons estudos.