Programmation en Python: Arriver “nom "Savoirs traditionnels" n'est pas défini” à l'Invite de Commande, fonctionne au RALENTI
Une question de débutant débutant avec Tkinter. Je l'ai téléchargé et écrit ce tutoriel Hello World
programme, et il fonctionnait bien au RALENTI. Cependant, quand j'ai enregistré le programme et il a couru à l'aide de l'invite de commande, ils sont tous retournés NameError: name 'tk' is not defined.
J'ai aussi essayé d'aller à la principale Python programme de commande et entrer manuellement le code, et il a bien fonctionné.
Il ne parvient pas à reconnaître Tk()
lorsqu'il est exécuté par l'invite de commande ou par le biais d'un double clic.
Je n'ai aucune idée de ce qui pourrait se passer ici.
Le code est tout simplement la base Hello World
programme que tous les tutoriels vous apprendre à écrire:
from Tkinter import *
root = Tk()
w = Label(root, text="Hello World")
w.pack()
root.mainloop()
Aussi parce que je sais que tout le monde va répondre avec, je ne suis pas à l'aide de 3.x et j'ai essayé de lancer le programme avec de l'appeler "tkinter," il n'a tout simplement pas trouver le module.
Apparemment ce programme fonctionne sur les ordinateurs des autres personnes, il n'est donc pas un problème avec le code lui-même. Quelqu'un a une idée de ce que pourrait être l'origine de ce problème?
- avez-vous essayé de les appeler, votre programme de quelque chose d'autre que tkinter? Que diriez-vous "myawesometestprogram.py"?
- Afin de clarifier le programme lui-même est appelé "coolprogram.py," je voulais dire que j'ai essayé d'appeler le module, j'ai été importation de tkinter, plutôt que de Tkinter.
- J'ai eu le même problème et impossible de trouver une quelconque solution jusqu'à ce que j'ai simplement changé ce:
- Avait le même problème, mais @SingleNegationElimination avait la solution. Merci!
Vous devez vous connecter pour publier un commentaire.
Fonctionne très bien dans mon ordinateur .
Puisque Vous avez dit : NameError: name 'tk' n'est pas défini.
ici tk avec un petit "t"
Que vous avez écrit,
au lieu de :
Vérifier Capital 'T'
Je suppose que c'est quelque chose à voir avec
Pour
python 2.x
utiliser cetteOU
Python est distribué avec différentes versions, dont certaines incluent des Tkinter, et certains ne le font pas.
Ce que votre décrivant est symptomatique d'avoir de multiples Python sur votre système. Lorsque vous exécutez l'INACTIVITÉ, de toute évidence, vous êtes en cours d'exécution un avec Tkinter installé. L'un de disponible à la ligne de commande, apparemment, ne l'est pas. Une façon de confirmer que ceci est d'essayer de lancer RALENTI à partir de la ligne de commande:
python -m idlelib.idle
. Si INACTIF ne se lance pas, le Tkinter n'est pas installé, et vous aurez besoin de trouver un chemin vers la version qui fait tourner à vide avec succès.tkinter
en python 3 ?J'ai eu le même problème et impossible de trouver une quelconque solution jusqu'à ce que j'ai simplement changé cela:
à:
Je ne sais pas le capital T fonctionne pour d'autres, mais sous Windows 64 bits Python 3.4.1, il doit être "tkinter"
Pour
Python 2.x
utilisation:Pour
Python 3
utilisation:Également vérifier le nom de votre fichier
si vous avez créé tkinter.py avant, alors il peut aussi causer le même problème. Il serait importé première
Pensé que ce serait aider à propos des "savoirs traditionnels non définie"
Cela fonctionne bien pour Python 3:
de tkinter import *
root = Tk()
importation avec un t minuscule et de l'utilisation des majuscules T dans les SAVOIRS traditionnels
cela a fonctionné pour moi