Я собираюсь заполнить комбинированный список tkinter списком значений атрибутов, содержащихся в наборе объектов определенного класса.У меня есть метод, который работает, но он кажется неэффективным по мере увеличения количества объектов.
Я пытался использовать операторы while / for, но, возможно, синтаксис неверен из-за форматирования значений tkinter.
class Customer:
def __init__(self, name, people):
self.name = name
self.people = people
customer1 = Customer("First Customer", ["Brian", "Sally"])
customer2 = Customer("Second Customer", ["Kevin", "James"])
customer3 = Customer("Third Customer", ["Peter", "Sarah"])
customer_list = [customer1, customer2, customer3]
from tkinter import *
from tkinter.ttk import *
window = Tk()
window.title("Command Console")
window.geometry('350x200')
l1 = Label(window, text = "Select a customer.")
l1.grid(column=0,row=0)
b1 = Button(window, text = "Grab")
b1.grid(column=1,row=1)
c1 = Combobox(window)
c1['values'] = customer_list[0].name, customer_list[1].name,
customer_list[2].name
c1.grid(column=0,row=1)
Хотя вышеприведенное работает, было бы предпочтительным заполнить.name значения для i = 0 to i < len(customer_list)
или аналогичные, однако я не могу выработать механизм.