#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')