Classtest / app.py
simonraj's picture
Update app.py
b84370e verified
raw
history blame
827 Bytes
import gradio as gr
def update_dropdown(class_prefix):
# Generate a list of student numbers for the class
if class_prefix is not None:
return [f"{class_prefix}{str(i).zfill(2)}" for i in range(1, 41)]
return []
# Define class options for the first dropdown
class_options = ["5H", "5E", "5RS"]
# Create the Gradio interface
with gr.Blocks() as demo:
class_dropdown = gr.Dropdown(label="Class", choices=class_options, value=class_options[0])
# Initialize the second dropdown with the values from the first class as default
student_dropdown = gr.Dropdown(label="Student", choices=update_dropdown(class_options[0]))
# Bind the update function to the class dropdown
class_dropdown.change(fn=update_dropdown, inputs=class_dropdown, outputs=student_dropdown)
# Launch the app
demo.launch()