web-dev-qa-db-fra.com

TkMessageBox - Aucun module

import TkMessageBox

Lorsque j'importe TkMessageBox, il affiche le message 'ImportError: Aucun module nommé' TkMessageBox '.

Pour autant que je sache, j'utilise python 3.3.2 et Tk 8.5.

Suis-je en train d'utiliser la mauvaise version de python ou de l'importer incorrectement?

Toutes les réponses seraient extrêmement utiles. Sinon, y a-t-il quelque chose de similaire dans la version que j'utilise?

19
Tom Lowbridge

Dans Python3.x, les choses ont un peu changé:

   >>> import tkinter
   >>> import tkinter.messagebox
   >>>

Je veux dire ce que nous appelons tkMessageBox en Python2.x devient tkinter.messagebox dans Python3.x

41
Billal Begueradj

Dans Python 2.x, pour importer, vous diriez import tkMessageBox. Mais dans Python 3.x, il a été renommé pour importer tkinter.messagebox.

J'espère que cela a aidé :))

4
Hung Truong

Si vous ne voulez pas avoir à changer le code pour Python 2 vs Python 3, vous pouvez utiliser l'importation en tant que:

try:
    from tkinter import messagebox
except:
    # Python 2
    import tkMessageBox as messagebox

Ensuite, l'utilisation de messagebox comme suit fonctionnera dans l'une ou l'autre version:

messagebox.showerror("Error", "Message.")
2
poikilos