Here is the source code for making a Rock, Paper and Scissors game using Tkinter
import tkinter as tk
import random
def rock_paper_scissors():
player_choice = user_choice.get()
computer_choice = random.choice(['rock', 'paper', 'scissors'])
result = None
if player_choice == computer_choice:
result = "Tie"
elif player_choice == 'rock' and computer_choice == 'scissors':
result = "You Win!"
player_score[0] += 1
elif player_choice == 'paper' and computer_choice == 'rock':
result = "You Win!"
player_score[0] += 1
elif player_choice == 'scissors' and computer_choice == 'paper':
result = "You Win!"
player_score[0] += 1
else:
result = "You Lose!"
computer_score[0] += 1
result_label.config(text=f"Result: {result}")
player_score_label.config(text=f"Your Score: {player_score[0]}")
computer_score_label.config(text=f"Computer Score: {computer_score[0]}")
def reset_scores():
player_score[0] = 0
computer_score[0] = 0
player_score_label.config(text=f"Your Score: {player_score[0]}")
computer_score_label.config(text=f"Computer Score: {computer_score[0]}")
result_label.config(text="Result: ")
root = tk.Tk()
root.resizable(False, False)
root.title("Rock, Paper, Scissors Game")
user_choice = tk.StringVar()
player_score = [0]
computer_score = [0]
result_label = tk.Label(root, text="Result: ", font=("Helvetica", 14))
result_label.pack()
player_score_label = tk.Label(root, text=f"Your Score: {player_score[0]}", font=("Helvetica", 14))
player_score_label.pack()
computer_score_label = tk.Label(root, text=f"Computer Score: {computer_score[0]}", font=("Helvetica", 14))
computer_score_label.pack()
rock_radio = tk.Radiobutton(root, text="Rock", variable=user_choice, value="rock", font=("Helvetica", 14))
rock_radio.pack()
paper_radio = tk.Radiobutton(root, text="Paper", variable=user_choice, value="paper", font=("Helvetica", 14))
paper_radio.pack()
scissors_radio = tk.Radiobutton(root, text="Scissors", variable=user_choice, value="scissors", font=("Helvetica", 14))
scissors_radio.pack()
play_button = tk.Button(root, text="Play", command=rock_paper_scissors, font=("Helvetica", 14))
play_button.pack()
reset_button = tk.Button(root, text="Reset Scores", command=reset_scores, font=("Helvetica", 14))
reset_button.pack()
root.mainloop()
No comments:
Post a Comment