Как отобразить ipywidgets.Dropdown без выбранного значения

Нет вопросов больше. Проблема заключается в более старом поведении версии ipywidgets, которое должно быть исправлено в версии 7.

Ipywidgets.Dropdown самостоятельно выбирает первое значение из списка опций.
Я хотел бы отобразить виджет без выбранного значения.
Первое значение в списке - бессмысленное значение по умолчанию, которое все еще необходимо отразить в пути рабочего процесса. Я прочитал обсуждение, в котором разработчик зашел так далеко, что добавил пустой элемент строки в список. Это исправляет внешний вид выпадающего меню (в некоторой степени, хотя атрибут placeholder по-прежнему игнорируется), но добавляет глупо выбираемый пустой элемент в выпадающий список. Добавление фиктивного элемента "Нет" в список является не лучшим решением. Установка значения "Нет" приводит к исключению "Неправильный выбор".
Я не понимаю, почему ipywidgets.Dropdown не следует подходу более простых виджетов, где разрешено пустое значение и отображается текст-заполнитель, чтобы предложить пользователю что-то выбрать.
Есть ли способ сделать выбор виджета не обязательным? Некоторые настройки атрибутов, о которых я не знаю? Если это невозможно, то каков самый простой возможный обходной путь?

2 ответа

Вы можете просто установить раскрывающееся значение None:

import ipywidgets as widgets

d = widgets.Dropdown(options=['hello', 'world'], value=None)
d

Выпадающий виджет

В версии 7.2.1 "ipywidgets" вам необходимо отключить изменения пользователя, чтобы иметь возможность отображать виджет, установив для него значение "Ложь" следующим образом:

d = widgets.Dropdown(options=['hello', 'world'], value=None, disabled=False)
Другие вопросы по тегам