Ткинтер не работает на моем python 3.7. их проблема в том, как я импортирую это / использую это? - PullRequest
0 голосов
/ 25 января 2020
from tkinter import *

root = tkinter()

myLabel = Label(root, text="hello world")

myLabel.pack()

root.mainloop()

когда я запускаю код, он возвращается

'NameError: name 'tkinter' is not defined'

Ответы [ 2 ]

1 голос
/ 25 января 2020

Если вы импортируете

 from tkinter import * 

, тогда должно быть

 root = Tk()

Если вы импортируете

 import tkinter

, тогда должно быть

 root = tkinter.Tk()

Если вы импортируете

 import tkinter as tk

, тогда должно быть

 root = tk.Tk()

Кстати: Последняя версия очень популярна, потому что она не использует import * (что не является предпочтительным), но позволяет использовать tk.Tk(), tk.Label() и др. c. который короче tkinter.Tk(), tkinter.Label(), et c. и вы можете узнать, используете ли вы стандартный tk.Label() или тематический ttk.Label() или собственный класс Label()

0 голосов
/ 25 января 2020

Вы должны использовать Tk() вместо tkinter().

Примерно так:

from tkinter import *

root = Tk()

myLabel = Label(root, text="hello world")

myLabel.pack()

root.mainloop()

Поскольку импортировать все * из tkinter не рекомендуется, вы должны импортировать его как tk

Так ваш код будет выглядеть так:

import tkinter as tk

root = tk.Tk()

myLabel = tk.Label(root, text="hello world")

myLabel.pack()

root.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...