Есть некоторая путаница в понимании списка

#python

#python

Вопрос:

Есть некоторая путаница, поскольку я новичок в python, в отношении понимания списка в коде, требуется объяснение того, что происходит с подмножествами в понимании списка, спасибо в Adv

 def Powerset2(Pset):
    listabc = [[]]
    for x in Pset:
        newsubsets = [subsets   [x] for subsets in listabc] #Explain this line in detail please
        listabc.extend(newsubsets)
    print(listabc)

Powerset2([2,3,4])
 

Ответ №1:

Ваш код выполняет следующее:

  • для каждого элемента x в Pset он преобразует x в список на один элемент.
  • Затем для каждого подмножества элементов в listabc он возьмет подмножество и объединит [x] с ним и поместит его в newsubsets .

Например, если [x] равно [4], а подмножества [1, 2, 3] — это, то newsubsets будут [1, 2, 3, 4] .

Я надеюсь, что это вам поможет.