Не работает клас?? Хто в курсе, почему?

Stos

Новичок
Пользователь
Апр 10, 2020
8
3
3
import tkinter


class Window(object):
def __int__(self):
self.Wnd = tkinter.Tk()

def create(self):
self.Wnd.mainloop()


p = Window
p.create() #TypeError: create() missing 1 required positional argument: 'self'
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Вместо __int__ нужно __init__:
Python:
import tkinter

class Window():
    def __init__(self):
        self.Wnd = tkinter.Tk()

    def create(self):
        self.Wnd.mainloop()

p = Window()
p.create()
 
  • Мне нравится
Реакции: Student

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
def __init__(self):
моя строка, а как правильно?
правильно def __init__(self):
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
У вас в вопросе было __int__ написано, поэтому класс не работал. Инициализации не происходило.
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Код:
import tkinter

class Window():
    def __init__(self):
        self.Wnd = tkinter.Tk()

    def create(self):
        self.Wnd.mainloop()

p = Window()
p.create()
Исправьте пожалуйста, буду очень благодарен.
Так это уже исправленный вариант. А про __init__ я написал чтобы было понятно что не работало.
 
  • Ха-ха!
Реакции: Student

Stos

Новичок
Пользователь
Апр 10, 2020
8
3
3
Вместо __int__ нужно __init__:
Можно строку. Не пойму где __init__:
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Можно строку. Не пойму где __init__:
В вашем коде вот строка def __int__(self):
 

Stos

Новичок
Пользователь
Апр 10, 2020
8
3
3
В вашем коде вот строка def __int__(self):
def __init__(self):
моя строка, а как правильно?
 

Stos

Новичок
Пользователь
Апр 10, 2020
8
3
3
правильно def __init__(self):
Код:
import tkinter

class Window():
    def __init__(self):
        self.Wnd = tkinter.Tk()

    def create(self):
        self.Wnd.mainloop()

p = Window()
p.create()
Исправьте пожалуйста, буду очень благодарен.
 

Stos

Новичок
Пользователь
Апр 10, 2020
8
3
3
Так это уже исправленный вариант. А про __init__ я написал чтобы было понятно что не работало.
Я ничего не поменял. Так и было. Проверьте у себя, а то у меня не работает. после p.create()
 

Stos

Новичок
Пользователь
Апр 10, 2020
8
3
3
Я ничего не поменял. Так и было. Проверьте у себя, а то у меня не работает. после p.create()
Огромное спасибо. Нашёл.
p=Window ... А нужно p=Window()
 
  • Мне нравится
Реакции: Student

Rud356

Модератор
Команда форума
Модератор
Апр 5, 2020
44
21
8
В следующий раз форматируйте, пожалуйста, код с помощью кнопки в панели сообщения.
 

Вложения

  • chrome_voSAyyivH2.png
    chrome_voSAyyivH2.png
    7,5 КБ · Просмотры: 0

Форум IT Специалистов