Как добавить элементы во вложенный список в Python?

#python #list

#python #Список #вставить

Вопрос:

Рассмотрим список внутри списка

 list1 = ["element1","element2",["subelement1","subelement2"]]
  

доступ к подэлементу 1 осуществляется по индексу [2][0]

 print (list1[2][0])
  

Но как я могу вставить элементы в позицию [2] [x], если функции insert могут быть переданы только два параметра.

 list.insert(index, element) 
  

Допустим, я хочу вставить "subelement0" в [2],[0] . Это создает список :

 list1 = ["element1","element2",["subelement0","subelement1","subelement2"]]
  

Комментарии:

1. вы имеете в виду ["element1", "subelement1", "element2", "subelement2"] ?

Ответ №1:

Попробуйте вставить элемент в вложенный список, как показано ниже:

 list1[2].insert(0, 'subelement0') 
print(list1)
#  ['element1', 'element2', ['subelement0', 'subelement1', 'subelement2']]
  

Ответ №2:

Я хотел бы расширить ответ, опубликованный @Andersson. Было бы неплохо проверить тип элемента списка, а затем insert новое значение.

 def list_modify(element_to_add):
  list1 = ["element1", "element2", ["subelement1", "subelement2"]]
  for index, value in enumerate(list1):
      if isinstance(value, list):
          list1[index].insert(0, element_to_add)
  print(list1)
  #  ['element1', 'element2', ['subelement0', 'subelement1', 'subelement2']]
if __name__ == "__main__":
  list_modify('subelement0')