почему не запускатеся программа, если в коде нет ошибок

import tkinter as tk
import time
import random
import threading


class TypeSpeedGUI:
    def __int__(self):
        self.root = tk.Tk()
        self.root.title('Keyboard Trainer')
        self.root.geometry("800x600")
        self.words = open("texts.txt", "r").read().split()

        self.frame = tk.Frame(self.root)

        self.sample_label = tk.Label(self.frame, text=random.choice(self.texts), font=('Times New Roman', 18))
        self.sample_label.grid(row=0, colum=0, columnsnap=2, padx=5, pady=10)

        self.input_entry = tk.Entry(self.frame, width=40, font=('Times New Roman', 18))
        self.input_entry.grid(row=1, colum=0, columnsnap=2, padx=5, pady=10)
        self.input_entery.bind("<KeyPress>", self.start)

        self.speed_label = tk.Label(self.frame, text="Speed: \n0.00 CPS\n0.00 CPM", font=('Times New Roman', 18))
        self.speed_label.grid(row=2, colum=0, columnsnap=2, padx=5, pady=10)

        self.reset_button = tk.Button(self.frame, text="reset", font=('Times New Roman', 18), command=self.reset)
        self.reset_button.grid(row=3, colum=0, columsnap=2, padx=5, pady=10)

        self.frame.pack(expand=True)

        self.counter = 0
        self.running = False

        self.root.mainloop()

    def start(self, event):
        if not self.running:
            if not event.keycode in [16, 17, 18]:
                self.running = True
                t = threading.Thread(target=self.time_thread)
                t.start()
        if not self.sample_label.cget('text') == self.input_entry.get():
            self.input_entry.config(fg="red")
        else:
            self.input_entry.config(fg="black")
        if self.input_entry.get() == self.sample_label.cget('text')[:-1]:
            self.running = False
            self.input_entry.config(fg="green")

    def time_thread(self):
        while self.running:
            time.sleep(0.1)
            self.counter += 0.1
            cps = len(self.input_entry.get()) / self.counter
            cpm = cps * 60
            self.speed_label.config(text=f"Speed: \n{cps:./2} CPS\n{cpm:.2f} CPM")

    def reset(self):
        pass


TypeSpeedGUI()

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

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

Ошибка в невнимательности. У вас метод называется не __init__, a __int__ :)

→ Ссылка