nonstopiodemo commited on
Commit
cea0710
Β·
verified Β·
1 Parent(s): 16054e8

Upload folder using huggingface_hub

Browse files
Files changed (3) hide show
  1. README.md +8 -8
  2. requirements.txt +3 -0
  3. streamlit_app.py +46 -0
README.md CHANGED
@@ -1,12 +1,12 @@
1
  ---
2
- title: Tick Tack Toe 1
3
- emoji: πŸƒ
4
- colorFrom: purple
5
- colorTo: gray
6
  sdk: streamlit
7
- sdk_version: 1.38.0
8
- app_file: app.py
9
  pinned: false
10
  ---
11
-
12
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: tick-tack-toe-1
3
+ emoji: πŸš€
4
+ colorFrom: blue
5
+ colorTo: green
6
  sdk: streamlit
7
+ sdk_version: "1.10.0"
8
+ app_file: streamlit_app.py
9
  pinned: false
10
  ---
11
+ # tick-tack-toe-1
12
+ This is a Streamlit app generated and deployed automatically.
requirements.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ streamlit
2
+ altair==4.2.0
3
+ vega_datasets
streamlit_app.py ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ import numpy as np
3
+
4
+ def check_winner(board):
5
+ for player in ['X', 'O']:
6
+ # Check rows, columns, and diagonals
7
+ for i in range(3):
8
+ if (board[i, :] == [player, player, player]).all() or \
9
+ (board[:, i] == [player, player, player]).all():
10
+ return player
11
+ if (np.diag(board) == [player, player, player]).all() or \
12
+ (np.diag(np.fliplr(board)) == [player, player, player]).all():
13
+ return player
14
+ return None
15
+
16
+ def main():
17
+ st.title('Tic Tac Toe Game')
18
+
19
+ board = np.array([['', '', ''],
20
+ ['', '', ''],
21
+ ['', '', '']])
22
+
23
+ player = 'X'
24
+ winner = None
25
+
26
+ while not winner and '' in board:
27
+ st.write(f"Player {player}'s turn")
28
+ row = st.slider("Select Row", 0, 2)
29
+ col = st.slider("Select Column", 0, 2)
30
+
31
+ if board[row, col] == '':
32
+ board[row, col] = player
33
+ winner = check_winner(board)
34
+ player = 'O' if player == 'X' else 'X'
35
+ else:
36
+ st.warning("Invalid move. Please select an empty cell.")
37
+
38
+ st.write(board)
39
+
40
+ if winner:
41
+ st.success(f"Player {winner} wins!")
42
+ else:
43
+ st.warning("It's a draw!")
44
+
45
+ if __name__ == '__main__':
46
+ main()