1
resposta

[Projeto] Pedra papel tesoura

import random

def quem_ganhou(computador,voce):
    if computador == voce :
        resultado = 'empate'
    elif computador == 'pedra' and voce == 'tesoura':
       resultado = 'computador' 
    elif computador == 'tesoura' and voce == 'papel':   
       resultado = 'computador'
    elif computador == 'papel' and voce == 'pedra':   
       resultado = 'computador'       
    else:
       resultado = 'você'   
    return resultado


opcoes_chaves = ['pedra','tesoura','papel']
print(opcoes_chaves)

computador = random.choice(opcoes_chaves)
sua_escolha = input('Escolha: pedra,papel ou tesoura:').lower()

while sua_escolha not in opcoes_chaves:
   print('Opção escolhida inválida, escolha uma opção válida')
   sua_escolha = input('Escolha: pedra,papel ou tesoura:').lower()

print(f'Você escolheu: {sua_escolha}')
print(f'Computador escolheu: {computador}')

resultado = quem_ganhou(computador,sua_escolha)
if resultado == 'empate':
  print(f'Houve empate, ambos escolheram {sua_escolha}')
else:  
  print(f'{resultado} venceu !')
1 resposta

Oi! Como vai?

Sua implementação está clara e bem estruturada! A validação da entrada do usuário com while ficou muito boa e ajuda bastante na experiência de quem joga.

Uma dica interessante para o futuro é usar um dicionário para simplificar as condições de vitória. Veja este exemplo:


regras = {'pedra': 'tesoura', 'tesoura': 'papel', 'papel': 'pedra'}
if computador == voce:
    resultado = 'empate'
elif regras[voce] == computador:
    resultado = 'voce'
else:
    resultado = 'computador'

Esse código reduz o número de elif e deixa mais direto quem vence quem.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!