The Dropdown component allows users to select one or multiple options from a dropdown menu.
Basic usage
import gradio as gr
def greet(name):
return f"Hello {name}!"
gr.Interface(
fn=greet,
inputs=gr.Dropdown(["Alice", "Bob", "Charlie"]),
outputs=gr.Textbox()
).launch()
Constructor
choices
Sequence[str | int | float | tuple] | None
default:"None"
List of options. Can be simple values or tuples of (label, value)
value
str | int | float | list | Callable | None
default:"None"
Default selected value(s). If None with single select, first choice is selected
type
Literal['value', 'index']
default:"'value'"
Return type:
"value" - Returns selected value(s)
"index" - Returns selected index/indices
multiselect
bool | None
default:"None"
If True, multiple selections allowed
If True, users can enter custom values
Maximum number of selections (multiselect only)
Whether users can type to filter options
Label displayed above component
interactive
bool | None
default:"None"
Whether selections can be made
Events
- change - Triggered when selection changes
- input - Triggered on input
- select - Triggered when option is selected
- focus - Triggered when component gains focus
- blur - Triggered when component loses focus
- key_up - Triggered on key release
Examples
With labels and values
import gradio as gr
gr.Dropdown(
choices=[
("Small (256x256)", "small"),
("Medium (512x512)", "medium"),
("Large (1024x1024)", "large")
],
value="medium",
label="Image size"
)
Multiselect
import gradio as gr
gr.Dropdown(
choices=["Python", "JavaScript", "Java", "C++"],
multiselect=True,
value=["Python"],
label="Select languages"
)
Custom values allowed
import gradio as gr
gr.Dropdown(
choices=["Red", "Blue", "Green"],
allow_custom_value=True,
label="Choose or enter a color"
)