import streamlit as st import random # Function for the number guessing game def number_guessing_game(): # Generate a random number between 1 and 10 number_to_guess = random.randint(1, 10) attempts = 0 guessed_correctly = False # Initialize session state variables for tracking game state if "number_to_guess" not in st.session_state: st.session_state.number_to_guess = number_to_guess st.session_state.attempts = attempts st.session_state.guessed_correctly = guessed_correctly # Streamlit UI st.title("Number Guessing Game") st.write("I'm thinking of a number between 1 and 10. Can you guess what it is?") # Input: User guess guess = st.number_input("Enter your guess:", min_value=1, max_value=10, step=1) if st.button("Submit Guess"): if guess < st.session_state.number_to_guess: st.session_state.attempts += 1 st.write("Too low! Try again.") elif guess > st.session_state.number_to_guess: st.session_state.attempts += 1 st.write("Too high! Try again.") else: st.session_state.guessed_correctly = True st.session_state.attempts += 1 st.write(f"Congratulations! You guessed the number {st.session_state.number_to_guess} in {st.session_state.attempts} attempts.") st.button("Play Again", on_click=reset_game) # Option to reset the game if st.session_state.guessed_correctly: st.button("Play Again", on_click=reset_game) # Function to reset the game def reset_game(): st.session_state.number_to_guess = random.randint(1, 10) st.session_state.attempts = 0 st.session_state.guessed_correctly = False st.experimental_rerun() # Run the game number_guessing_game()