No caso do Match não precisamos informar que o "1, 2, 3..." se trata de um stg ou int??
No caso do Match não precisamos informar que o "1, 2, 3..." se trata de um stg ou int??
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.