Использование цикла for в списках. Python

Мне нужен цикл for для того чтобы перебирать каждый индекс с использованием .get, обращаюсь к листу в методе класса

new_list = []

class Twolist():
     def __init__(self):
        self.new_list = new_list
 
     def create_sopr(self):
        entry31 = Text(frame2, width =22, height 
        = 6,wrap=WORD, relief=FLAT)
        entry31.tag_configure("center", 
        justify='center')
        entry31.insert("1.0", " ")
        entry31.tag_add("center", 1.0, "end")
        entry31.pack()
        frame2.create_window((self.x_pos + 150,  
        self.y_pos), window=entry31 )
        frame2.create_text(self.x_pos + 85,  
        text_y, anchor=NW, text= "Информация о \n 
        наряде сопровождения",justify="center")
        self.new_list.append (entry31)
        self.entry31 = entry31

a = new_list [for i " Не знаю что указать " [Срез равных количеству индексов в листе]].get("1.0" END) 
print(a)

Мне нужно чтобы программа работала примерно так:

print(new_list[1].get("1.0", END),
new_list[2].get("1.0", END),
new_list[3].get("1.0", END))

и тп в зависимости от количества индексов в списке.


Ответы (1 шт):

Автор решения: CrazyElf

Если я что-то понял из вашего объяснения, то списковое включение должно выглядеть примерно так:

a = [i.get("1.0", END) for i in new_list]
print(a)

По сути это как если через обычный цикл написать так:

a = []
for i in new_list:
    a.append(i.get("1.0", END))
print(a)

Убрать лишний перевод строки\n в конце строки можно через использование метода .strip:

i.get("1.0", END).strip()
→ Ссылка