Как сложить значения в checkbox?

Вопрос в том, как в def count разумно посчитать сумму в чекбоксах? Вариант, как у меня через if кажется долгим и неразумным.

Мой код:

import tkinter
import tkinter.messagebox

class MyGUI:
    def __init__(self):
        self.root = tkinter.Tk()
        self.root.title("Подсчет работ")
        # делаем рамки
        self.frame_1 = tkinter.Frame(self.root)
        self.frame_2 = tkinter.Frame(self.root)
        self.frame_3 = tkinter.Frame(self.root)
        self.frame_4 = tkinter.Frame(self.root)
        self.frame_5 = tkinter.Frame(self.root)
        self.frame_6 = tkinter.Frame(self.root)
        self.frame_7 = tkinter.Frame(self.root)
        self.frame_8 = tkinter.Frame(self.root)
        #закрываем рамки

    # задаем чек боксы?
    self.cb_var1 = tkinter.IntVar()
    self.cb_var2 = tkinter.IntVar()
    self.cb_var3 = tkinter.IntVar()
    self.cb_var4 = tkinter.IntVar()
    self.cb_var5 = tkinter.IntVar()
    self.cb_var6 = tkinter.IntVar()
    self.cb_var7 = tkinter.IntVar()
    # выбираем позицию чекбокса
    self.cb_var1.set(0)
    self.cb_var2.set(0)
    self.cb_var3.set(0)
    self.cb_var4.set(0)
    self.cb_var5.set(0)
    self.cb_var6.set(0)
    self.cb_var7.set(0)
    # первая рамка
    self.cb1 = tkinter.Checkbutton(self.frame_1,
                                   text="Замена масла - 500 ",
                                   variable=self.cb_var1)
    self.cb1.pack(side="left")
    # вторая рамка
    self.cb2= tkinter.Checkbutton(self.frame_2,
                                   text="Смазочные работы - 300",
                                   variable=self.cb_var2)
    self.cb2.pack(side="left")
    # третья рамка 
    self.cb3 = tkinter.Checkbutton(self.frame_3,
                                   text="Промывка радиатора - 700",
                                   variable=self.cb_var3)
    self.cb3.pack(side="left")
    #четвертая рамка
    self.cb4 = tkinter.Checkbutton(self.frame_4,
                                   text="Замена жидкости в трансмисии = 1000",
                                   variable=self.cb_var4)
    self.cb4.pack(side="left")
            # пятая рамка
    self.cb5 = tkinter.Checkbutton(self.frame_5,
                                   text="Осмотр - 800",
                                   variable=self.cb_var5)
    self.cb5.pack(side="left")
    # шестая рамка 
    self.cb6 = tkinter.Checkbutton(self.frame_6,
                                   text="Замена глушителя выхлопа - 1300",
                                   variable=self.cb_var6)
    self.cb6.pack(side="left")
    #седьмая рамка
    self.cb7 = tkinter.Checkbutton(self.frame_7,
                                   text="Перестановка шин - 1300",
                                   variable=self.cb_var7)
    self.cb7.pack(side="left")

    # 8 рамка с кнопками
    self.button_value = tkinter.Button(self.frame_8,
                                       text="Показать сумму",
                                       command=self.do_count)
    self.button_quit = tkinter.Button(self.frame_8,
                                      text="Выйти",
                                      command=self.root.quit)
    self.button_value.pack(side="left")
    self.button_quit.pack(side="left")
    self.frame_1.pack()
    self.frame_2.pack()
    self.frame_3.pack()
    self.frame_4.pack()
    self.frame_5.pack()
    self.frame_6.pack()
    self.frame_7.pack()
    self.frame_8.pack()
    tkinter.mainloop()
def do_count(self):
    self.message = "Ваши затраты:"
    if self.cb_var1.get() == 1:
        self.message = "Ваши затраты:" + "500 р"
    elif self.cb_var2.get() == 1:
        self.message = "Ваши затраты:" + "300 р"
    elif self.cb_var3.get() == 1:
        self.message = "Ваши затраты:" + "700 р"
    elif self.cb_var4.get() == 1:
        self.message = "Ваши затраты:" + "1000 р"
    elif self.cb_var5.get() == 1:
        self.message = "Ваши затраты:" + "800 р"
    elif self.cb_var6.get() == 1:
        self.message = "Ваши затраты:" + "1300 р"
    elif self.cb_var7.get() == 1:
        self.message ="Ваши затраты:" + "1300 р"
    if  self.cb_var1.get() and self.cb_var2.get() == 1:
        self.message ="Ваши затраты:" + "800 р"
    if  self.cb_var1.get() and self.cb_var3.get() == 1:
        self.message ="Ваши затраты:" + "1200 р"
    if  self.cb_var1.get() and self.cb_var4.get() == 1:
        self.message ="Ваши затраты:" + "1500 р"
    if  self.cb_var1.get() and self.cb_var5.get() == 1:
        self.message ="Ваши затраты:" + "1300 р"
    if  self.cb_var1.get() and self.cb_var6.get() == 1:
        self.message ="Ваши затраты:" + "1800 р"
    if  self.cb_var1.get() and self.cb_var7.get() == 1:
        self.message ="Ваши затраты:" + "1800 р"
        
    if self.cb_var1.get() and self.cb_var2.get() and self.cb_var3.get() == 1:
        self.message ="Ваши затраты:" + "1500 р"
    tkinter.messagebox.showinfo("Общая Стоимость",self.message)

my_gui=MyGUI() 

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

Автор решения: Renat Shabanov

Добавил: self.message =0 , и вроде все сработало.

 def do_count(self):
    self.message = 0
    if self.cb_var1.get() == 1:
        self.message = self.message + 500
    if self.cb_var2.get() == 1:
        self.message =self.message + 300 
    if self.cb_var3.get() == 1:
        self.message =self.message + 700
    if self.cb_var4.get() == 1:
        self.message =self.message + 1000
    if self.cb_var5.get() == 1:
        self.message =self.message + 800
    if self.cb_var6.get() == 1:
        self.message =self.message + 1300
    if self.cb_var7.get() == 1:
        self.message =self.message + 1300
    self.message = self.message
    tkinter.messagebox.showinfo("Выбор", self.message)
→ Ссылка
Автор решения: Павел

Думаю так будет удобнее.

def do_count(self):
    self.message = 0
    fields = {self.cb_var1 : 500,
              self.cb_var2 : 300,
              self.cb_var3 : 700,
              self.cb_var4 : 1000,
              self.cb_var5 : 800,
              self.cb_var6 : 1300,
              self.cb_var7 : 1300}

    for field, cost in fields.items():
        if field.get() == 1:
            self.message += cost
    tkinter.messagebox.showinfo("Выбор", self.message)
→ Ссылка