aashwinik commited on
Commit
8fb5384
·
verified ·
1 Parent(s): 8ea503c

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +38 -15
app.py CHANGED
@@ -3,6 +3,10 @@ import streamlit as st
3
  #Globals
4
  if "legal_numbers" not in st.session_state:
5
  st.session_state.legal_numbers = [1,2,3,4,5,6,7,8,9]
 
 
 
 
6
 
7
  def get_userInput():
8
  input = st.text_input("Enter a number between 1 to 9: ", key="input")
@@ -20,34 +24,53 @@ def validate_userInput(user_input):
20
  def error_Message(msg):
21
  st.write(msg)
22
 
23
- def display_board(firstRun):
 
 
 
 
 
 
 
24
  if firstRun:
25
  col1, col2, col3 = st.columns(3)
26
  col4, col5, col6 = st.columns(3)
27
  col7, col8, col9 = st.columns(3)
28
  with col1:
29
- st.text("X")
30
  with col2:
31
- st.text("O")
32
  with col3:
33
- st.text("...")
34
  with col4:
35
- st.text(" X ")
36
  with col5:
37
- st.text(" O ")
38
  with col6:
39
- st.text(" ... ")
40
  with col7:
41
- st.text(" X ")
42
  with col8:
43
- st.text(" O ")
44
  with col9:
45
- st.text(" ... ")
46
- # else:
47
-
 
 
 
 
 
 
 
 
 
 
48
 
49
- def reset_legalNumbers():
50
  st.session_state.legal_numbers = [1,2,3,4,5,6,7,8,9]
 
 
51
 
52
  def update_legalNumbers(number):
53
  st.session_state.legal_numbers.remove(int(user_input))
@@ -69,10 +92,10 @@ if submit:
69
  response=validate_userInput(user_input)
70
  if response:
71
  update_legalNumbers(user_input)
 
72
  else:
73
  error_Message("Please enter a digit between 1 to 9.")
74
 
75
  if replay:
76
- display_board(True)
77
- #reset_legalNumbers()
78
 
 
3
  #Globals
4
  if "legal_numbers" not in st.session_state:
5
  st.session_state.legal_numbers = [1,2,3,4,5,6,7,8,9]
6
+ if "gridNumbers" not in st.session_state:
7
+ st.session_state.gridNumbers = ["...", "...", "...", "...", "...", "...", "...", "...", "..."]
8
+ if "Value" not in st.session_state:
9
+ st.session_state.Value = "X"
10
 
11
  def get_userInput():
12
  input = st.text_input("Enter a number between 1 to 9: ", key="input")
 
24
  def error_Message(msg):
25
  st.write(msg)
26
 
27
+ def toggleValue()
28
+ if st.session_state.Value == "X":
29
+ st.session_state.Value = "O"
30
+ else:
31
+ st.session_state.Value == "X"
32
+
33
+
34
+ def display_board(firstRun, num):
35
  if firstRun:
36
  col1, col2, col3 = st.columns(3)
37
  col4, col5, col6 = st.columns(3)
38
  col7, col8, col9 = st.columns(3)
39
  with col1:
40
+ st.text(st.session_state.gridNumbers[0])
41
  with col2:
42
+ st.text(st.session_state.gridNumbers[1])
43
  with col3:
44
+ st.text(st.session_state.gridNumbers[2])
45
  with col4:
46
+ st.text(st.session_state.gridNumbers[3])
47
  with col5:
48
+ st.text(st.session_state.gridNumbers[4])
49
  with col6:
50
+ st.text(st.session_state.gridNumbers[5])
51
  with col7:
52
+ st.text(st.session_state.gridNumbers[6])
53
  with col8:
54
+ st.text(st.session_state.gridNumbers[7])
55
  with col9:
56
+ st.text(st.session_state.gridNumbers[8])
57
+ else:
58
+ match num:
59
+ case 1: with col1: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
60
+ case 2: with col2: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
61
+ case 3: with col3: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
62
+ case 4: with col4: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
63
+ case 5: with col5: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
64
+ case 6: with col6: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
65
+ case 7: with col7: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
66
+ case 8: with col8: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
67
+ case 9: with col9: st.text(st.session_state.gridNumbers[num]=st.session_state.Value)
68
+ toggleValue()
69
 
70
+ def reset_game():
71
  st.session_state.legal_numbers = [1,2,3,4,5,6,7,8,9]
72
+ st.session_state.gridNumbers = ["...", "...", "...", "...", "...", "...", "...", "...", "..."]
73
+ st.session_state.Value = "X"
74
 
75
  def update_legalNumbers(number):
76
  st.session_state.legal_numbers.remove(int(user_input))
 
92
  response=validate_userInput(user_input)
93
  if response:
94
  update_legalNumbers(user_input)
95
+ display_board(False)
96
  else:
97
  error_Message("Please enter a digit between 1 to 9.")
98
 
99
  if replay:
100
+ reset_game()
 
101