zeeshan4801's picture
Update app.py
9d1e930 verified
import streamlit as st
import random
def get_computer_choice():
"""Randomly select rock, paper, or scissors for the computer."""
return random.choice(["Rock", "Paper", "Scissors"])
def determine_winner(user_choice, computer_choice):
"""Determine the winner of the game."""
if user_choice == computer_choice:
return "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")
):
return "user"
else:
return "computer"
def main():
st.set_page_config(page_title="Rock Paper Scissors", page_icon="πŸ–Š", layout="centered")
st.title("πŸ† Rock Paper Scissors Game")
# Initialize session state for scores
if "user_score" not in st.session_state:
st.session_state.user_score = 0
if "computer_score" not in st.session_state:
st.session_state.computer_score = 0
st.sidebar.header("Game Settings")
user_choice = st.sidebar.radio("Choose your move:", ["Rock", "Paper", "Scissors"])
if st.sidebar.button("Play!"):
computer_choice = get_computer_choice()
winner = determine_winner(user_choice, computer_choice)
if winner == "user":
st.session_state.user_score += 1
result = "You win!"
elif winner == "computer":
st.session_state.computer_score += 1
result = "Computer wins!"
else:
result = "It's a tie!"
st.write("### Your Choice: ", user_choice)
st.write("### Computer's Choice: ", computer_choice)
st.write("## Result: ", result)
# Display Scores
st.write("---")
col1, col2 = st.columns(2)
with col1:
st.subheader("Your Score")
st.write(st.session_state.user_score)
with col2:
st.subheader("Computer's Score")
st.write(st.session_state.computer_score)
st.sidebar.markdown("---")
st.sidebar.info(
"This is a simple Rock Paper Scissors game with a points system. Make your choice, press Play, and see if you can beat the computer!"
)
if __name__ == "__main__":
main()