Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| #Globals | |
| legal_numbers = [1,2,3,4,5,6,7,8,9] | |
| def get_userInput(): | |
| input = st.text_input("Enter a number between 1 to 9: ", key="input") | |
| return input | |
| def validate_userInput(user_input): | |
| if user_input.isdigit(): | |
| if int(user_input) < 1 or int(user_input) > 9: | |
| return False | |
| else: | |
| return True | |
| else: | |
| return False | |
| def error_Message(msg): | |
| st.write(msg) | |
| def display_board(firstRun): | |
| if firstRun: | |
| col1, col2, col3 = st.columns(3) | |
| col4, col5, col6 = st.columns(3) | |
| col7, col8, col9 = st.columns(3) | |
| with col1: | |
| st.text("X") | |
| with col2: | |
| st.text("O") | |
| with col3: | |
| st.text("...") | |
| with col4: | |
| st.text(" X ") | |
| with col5: | |
| st.text(" O ") | |
| with col6: | |
| st.text(" ... ") | |
| with col7: | |
| st.text(" X ") | |
| with col8: | |
| st.text(" O ") | |
| with col9: | |
| st.text(" ... ") | |
| # else: | |
| def reset_legalNumbers(): | |
| legal_numbers = [1,2,3,4,5,6,7,8,9] | |
| def update_legalNumbers(number): | |
| legal_numbers.remove(int(user_input)) | |
| #st.text("Legal Numbers: " + "".join(str(legal_numbers))) | |
| print(legal_numbers) | |
| #UIApp starts here | |
| st.set_page_config(page_title="Python - Tic Tac Toe", page_icon=":python:") | |
| st.header("Python - Tic Tac Toe") | |
| user_input=get_userInput() | |
| display_board(True) | |
| firstRun=True | |
| if firstRun: | |
| reset_legalNumbers() | |
| firstRun=False | |
| #UI Buttons | |
| submit=st.button('Submit') | |
| replay=st.button('Replay') | |
| #Button functionality | |
| if submit: | |
| response=validate_userInput(user_input) | |
| if response: | |
| update_legalNumbers(user_input) | |
| else: | |
| error_Message("Please enter a digit between 1 to 9.") | |
| if replay: | |
| display_board(True) | |
| #reset_legalNumbers() | |