prompter: Podries escriure un joc de pedra, paper, tisores en Python?

assistant: Clar, aquí tens una implementació que et pot servir:

```
import random

def game():
    choices = ['rock', 'paper', 'scissors']
    computer_choice = random.choice(choices)

    user_choice = input("Choose rock, paper, or scissors: ")
    user_choice = user_choice.lower()

    print("You chose: " + user_choice)
    print("Computer chose: " + computer_choice)

    if user_choice == computer_choice:
        print("It's a tie!")
    elif (user_choice == 'rock' and computer_choice == 'scissors') or (user_choice == 'paper' and computer_choice == 'rock') or (user_choice == 'scissors' and computer_choice == 'paper'):
        print("You win!")
    else:
        print("Computer wins!")

    play_again = input("Do you want to play again? (y/n): ")
    if play_again == 'y':
        game()

game()

```

En aquest joc, l'usuari tria entre 'rock', 'paper' o 'scissors', mentre que l'elecció de l'ordinador es determina a l'atzar. Després, es comparen les eleccions de l'usuari i l'ordinador per determinar el guanyador. El joc acaba amb una opció per tornar a jugar. Que et diverteixis jugant!

assistant: Sí, aquí tens un exemple senzill de com podríem escriure un joc de pedra, paper, tisores en Python:


import random

def main():
    choices = ['pedra', 'paper', 'tisores']
    print("Benvingut al joc de pedra, paper, tisores!")
    while True:
        player_choice = input("Escull (pedra, paper, tisores): ")
        if player_choice not in choices:
            print("Opció no vàlida. Torna-ho a provar.")
            continue
        computer_choice = random.choice(choices)
        print(f"Has escollit {player_choice}. El teu oponent ha escollit {computer_choice}.")
        if player_choice == computer_choice:
            print("Empat!")
        elif player_choice == 'pedra' and computer_choice == 'tisores' \
            or player_choice == 'paper' and computer_choice == 'pedra' \
            or player_choice == 'tisores' and computer_choice == 'paper':
            print("Has guanyat!")
        else:
            print("Has perdut.")
        play_again = input("Vols jugar de nou? (sí/no): ")
        if play_again.lower() != 'sí':
            break

if __name__ == '__main__':
    main()
Aquest programa comença amb la importació del mòdul random, que utilitzarem per generar la selecció aleatòria de l'ordinador. A continuació, definim una funció principal (main) que executa el joc.

Dins la funció main, definim una llista de les opcions possibles (choices) i inicialitzem el joc amb un missatge de benvinguda. A continuació, el joc entra en un bucle while que es repeteix fins que l'usuari decideixi no jugar més.

Dins el bucle, l'usuari introdueix la seva selecció, que es comprova per a veure si és una opció vàlida. Si no és vàlida, el joc sol·licita que l'usuari introdueixi una selecció correcta.

Després que l'usuari hagi fet una selecció vàlida, l'ordinador selecciona una opció aleatòria i es compara amb la selecció de l'usuari per determinar el guanyador. Si l'usuari guanya, el programa imprimeix "Has guanyat!". Si perd, el programa imprimeix "Has perdut.". Si hi ha un empat, el programa imprimeix "Empat!".

Finalment, el programa pregunta si l'usuari vol jugar de nou. Si la resposta és no, el bucle es trenca i el programa finalitza. Si la resposta és sí, el joc es reinicia.

Espero que això t'ajudi!

assistant: Per descomptat! Aquí tens un exemple bàsic d'un joc de pedra, paper, tisores en Python. Aquest joc permet que un usuari jugui contra l'ordinador, que farà una elecció aleatòria:

import random

def joc_pedra_paper_tisores(jugador, ordinador):
    if jugador == ordinador:
        return "Empat!"
    elif (jugador == "pedra" and ordinador == "tisores") or (jugador == "paper" and ordinador == "pedra") or (jugador == "tisores" and ordinador == "paper"):
        return "Has guanyat!"
    else:
        return "Has perdut!"

opcions = ["pedra", "paper", "tisores"]

while True:
    eleccio_jugador = input("Tria pedra, paper, tisores o escriu 'sortir' per acabar el joc: ").lower()
    if eleccio_jugador == "sortir":
        break
    
    if eleccio_jugador not in opcions:
        print("Entrada no vàlida. Si us plau, tria entre pedra, paper o tisores.")
        continue
    
    eleccio_ordinador = random.choice(opcions)
    print(f"L'ordinador ha triat {eleccio_ordinador}.")
    
    resultat = joc_pedra_paper_tisores(eleccio_jugador, eleccio_ordinador)
    print(resultat)

Per jugar, simplement copia i enganxa el codi en un fitxer de text amb l'extensió ".py" i executa'l amb Python. El joc et demanarà que introdueixis la teva elecció (pedra, paper o tisores) i et dirà si has guanyat, has perdut o has empatat amb l'ordinador. Si vols acabar el joc, introdueix "sortir".