Я запускаю ноутбук Юпитера, который, помимо прочего, отображает простой словарь строки к строке (с одним пустой строкой внизу, чтобы пользователь мог добавить новые записи в словарь). Я использую Ipysheet для этого, и я заметил, что, поскольку пользователь несколько раз загружался в лист, не перезагружая ядро, поток пользовательского интерфейса jupyter ноутбука замедлится и в конечном итоге сбоя. < /p>
После некоторого исследования я обнаружил, что каждая отдельная ячейка Ipysheet загружается как отдельный виджет, и я подумал, что проблема, вероятно, была слишком много виджеты и не отбрасывают их после того, как словарь был выгружен. Я решил попытаться изменить свой код, чтобы он создавал только столько ячеек, сколько было необходимо для отображения самого крупнейшего словаря, который был загружен в память до сих пор в этой программе. < /P>
К сожалению, я обнаружил, что не могу изменить значение ячейки, как только она уже была создана программно. Я попытался просто установить cell_object.value = target_value , так как это, казалось, было интерфейсом для всех других модификаций IPYSHEEP, но обнаружил, что это не обновляло ячейки (даже если я мог изменить sheat_object.rows = new_row_number Без проблем.) - Они продолжали иметь значения исходного словаря даже после того, как новый словарь должен был быть загружен в лист. М отсутствует? UI не обновляется правильно? Являются ли ячейки неизменными типами в Ipysheet? < /P>
def set_sheet_from_dictionary(self, target_dict):
key_list = list(target_dict.keys())
key_list.sort()
key_length = len(target_dict.keys())
with ipysheet.hold_cells():
self.sheet1.rows = key_length+1
for i in range(len(key_list)):
if len(self.cell_list_a)
Подробнее здесь: https://stackoverflow.com/questions/586 ... -new-cells
Как изменить ценность ячеек в Ipysheest без создания новых ячеек? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Почему Google Chrome не печатает границы таблиц и ячеек, а также цвета фона ячеек?
Anonymous » » в форуме Html - 0 Ответы
- 41 Просмотры
-
Последнее сообщение Anonymous
-