Spaces:
Herc
/
Runtime error

Herc commited on
Commit
09cb456
·
1 Parent(s): ca05a40

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +58 -0
app.py ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ import pandas as pd
3
+ from datetime import date, timedelta
4
+ import random
5
+
6
+ # Functions for schedule generation and date assignment are as defined earlier
7
+
8
+ def create_schedule(num_teams, num_conferences, num_inter_games):
9
+ """Create the entire schedule based on user inputs."""
10
+ full_schedule = []
11
+
12
+ # Generate schedule for each conference
13
+ for i in range(num_conferences):
14
+ conference_name = chr(65 + i) # 'A', 'B', 'C', 'D', ...
15
+ combined_schedule = combine_schedules(conference_name, num_teams, num_inter_games)
16
+ schedule_with_dates = assign_dates_to_matches_v2(combined_schedule)
17
+
18
+ for match in schedule_with_dates:
19
+ full_schedule.append({
20
+ "Team 1": match[0],
21
+ "Team 2": match[1],
22
+ "Date": match[2]
23
+ })
24
+
25
+ return pd.DataFrame(full_schedule)
26
+
27
+ # Streamlit App
28
+
29
+ st.title("Basketball Game Schedule Generator")
30
+
31
+ # Configuration UI
32
+ st.header("Configuration")
33
+
34
+ num_teams = st.number_input("Number of teams per conference:", min_value=2, value=10)
35
+ num_conferences = st.number_input("Number of conferences:", min_value=2, value=4)
36
+ num_inter_games = st.number_input("Number of inter-conference games per team:", min_value=1, value=3)
37
+
38
+ commissioners = st.multiselect("Add commissioners:", options=[], default=[])
39
+
40
+ add_commissioner = st.text_input("New commissioner name:")
41
+ if add_commissioner:
42
+ commissioners.append(add_commissioner)
43
+
44
+ # Schedule Generation
45
+ if st.button("Generate Schedule"):
46
+ global schedule_df
47
+ schedule_df = create_schedule(num_teams, num_conferences, num_inter_games)
48
+
49
+ # Schedule Viewing
50
+ st.header("View Schedule")
51
+ conference_selector = st.selectbox("Select conference to view schedule:", options=["All"] + [f"Conference {chr(65+i)}" for i in range(num_conferences)])
52
+ if conference_selector == "All":
53
+ st.dataframe(schedule_df)
54
+ else:
55
+ filtered_schedule = schedule_df[(schedule_df["Team 1"].str.startswith(conference_selector)) | (schedule_df["Team 2"].str.startswith(conference_selector))]
56
+ st.dataframe(filtered_schedule)
57
+
58
+ # Export functionality can be added later