Мне нужно создать список списков. Я включил некоторый код, ведущий к тому, где у меня проблемы. masterList внизу - желаемый результат. Я попытался объяснить свой код и продемонстрировать шаги для ясного понимания.Вложения в python 2.7 (список)
storeTask = list(islice((t for t in list5 if t[1] == 'Tasked'), 3))
печати storeTask возвращает это:
[['Acq666666', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY','XXXX', ['367179', 'Image 6'], ['367179', 'VID 12']], ['Acq777777', 'Tasked', 'Location', 'Movie', '20XX-MM-XXXX', 'XXXX ', ['367194', 'Image 1'], ['367194', 'VID 5']], ['Acq888888', 'Tasked', 'Location', 'Movie', '20xx-MM-YYYY', 'XXXX', ['367195', 'VID 9']]]
я цикл через storeTask и количества элементов. Если счетчик равен 8, я удаляю первый элемент второго вложенного списка.
for st in storeTask:
taskedL = len(st)
if taskedL == 6: pass
if taskedL == 7: pass
if taskedL == 8:
longList = st[7]
del(longList[0])
печать ул возвращает это:
['Acq666666', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', ['367179', 'Image 6'], ['VID 12']]
['Acq777777', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', ['367194', 'Image 1'], ['VID 5']]
['Acq888888', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', ['367195', 'VID 9']]
Чтобы удалить вложенные списки, которые я использую расплющить
mstock = flatten(st)
печати mstock возвращается:
['Acq666666', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', '367179', 'Image 6', 'VID 12']
['Acq777777', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', '367194', 'Image 1', 'VID 5']
['Acq888888', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', '367195', 'VID 9']
Это именно результаты Мне нужно. Однако мне нужно вернуть эти списки в главный список. Ниже то, что я хотел бы выход быть:
masterList = [
['Acq666666', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', '367179', 'Image 6', 'VID 12']
['Acq777777', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', '367194', 'Image 1', 'VID 5']
['Acq888888', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', '367195', 'VID 9']
]
** Я пытался создать пустой список и добавить их, но результат производит это для каждого списка:
[['Acq888888', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', '367195', 'VID 9']]
[['Acq666666', 'Tasked', 'Location', 'Movie', '20XX-MM-YYYY', 'XXXX', '367179', 'Image 6', 'VID 12']]
У меня есть задал аналогичный вопрос, но не смог использовать его с успехом.
Возможно, с кодом, породившим последний результат, кто-то может определить, где он поступил не так? – kporter