Как получить индекс самого большого списка внутри списка списков с помощью Python?

Я храню анимационные ключевые кадры из Cinema4D (используя awesome py4D) в списки списков:

props = [lx,ly,lz,sx,sy,sz,rx,ry,rz] 

Я распечатал ключевые кадры для каждого свойства / дорожки в произвольной анимации, и они имеют разную длину:

 track Position . X has 24 keys track Position . Y has 24 keys track Position . Z has 24 keys track Scale . X has 1 keys track Scale . Y has 1 keys track Scale . Z has 1 keys track Rotation . H has 23 keys track Rotation . P has 24 keys track Rotation . B has 24 keys 

Теперь, если я хочу использовать эти клавиши в Blender, мне нужно сделать что-то вроде:

  1. перейти к текущему кадру
  2. установить свойства для этого ключевого кадра (может быть местоположение, поворот, масштаб) и вставить ключевой кадр

Пока что мой план:

  1. Петля от 0 до максимального количества ключевых кадров для всех свойств
  2. Прокрутите каждое свойство
  3. Проверьте, есть ли у него значение, сохраненное для текущего ключа, если это так, перейдите к кадру в Blender и сохраните значения / вставить ключевой кадр

Это лучший способ сделать это?

Это контекст для вопроса.

Сначала мне нужно найти самый большой список, который хранит реквизит. Я новичок в python и задавался вопросом, есть ли волшебная функция, которая делает это для вас. Аналогично max (), но для длин списка.

На данный момент я думаю о кодировании так:

 //after props are set lens = [] for p in props: lens.append(len(p)) maxLen = max(lens) 

Какой был бы лучший способ получить это?

благодаря

2 Solutions collect form web for “Как получить индекс самого большого списка внутри списка списков с помощью Python?”

 max(enumerate(props), key = lambda tup: len(tup[1])) 

Это дает вам кортеж, содержащий (index, list) самого длинного списка в реквизитах.

Вы можете использовать выражение генератора:

 maxLen = max(len(p) for p in props) 
  • Перебирайте список и обрабатывайте StopIteration в Python красиво
  • Как вычесть два списка в python
  • Объединить значения нескольких столбцов в один столбец в python pandas
  • Итерация в двух разных словарях одновременно на Python
  • Изменение номера при вставке в список
  • Когда `starmap` может быть предпочтительнее «List Comprehension»
  • Python: как присоединиться к записям в наборе в одну строку?
  • если еще в понимании списка
  • Как хэш-списки?
  • Запись CSV без разделителей в Python
  • Сравнение первого элемента последовательных списков кортежей в Python
  • Python - лучший язык программирования в мире.