El script funciona en IDLE, pero el archivo .py no funciona

Tengo un script tkinter, que se ejecuta bien en IDLE. Sin embargo, cuando hago doble clic en el archivo .py desde el Explorador de Windows, la ventana de la consola parpadea durante medio segundo y luego se cierra.

Pude hacer una pantalla de la ventana de la consola. Dice:

...etc.etc... NameError: global name 'simpledialog' is not defined 

simpledialog es un módulo en tkinter que uso en mi script. Como lo hago from tkinter import * , no hay necesidad de escribir explícitamente tkinter.simpledialog .

Funciona en IDLE, ¿por qué no como .py?

    Related of "El script funciona en IDLE, pero el archivo .py no funciona"

    IDLE usa Tkinter como su entorno gráfico. Es posible que su código dependa de un efecto secundario de una importación por parte de IDLE. Esto es especialmente cierto si usa IDLE sin un subproceso.

    El módulo simpledialog no se importa cuando se usa from tkinter import * . Intenta agregar esto a tu código:

     import tkinter.simpledialog as simpledialog 

    ¿Ha actualizado su variable de entorno PATH para que se encuentre su ejecutable de Python? Puede encontrar más información sobre cómo hacerlo aquí – Uso de Python en Windows

    Pero básicamente debe asegurarse de que se muestre la carpeta que contiene python.exe (por ejemplo, C: \ Python32) cuando escribe el siguiente comando desde un indicador:

     echo %PATH% 

    Tuve exactamente el mismo problema con uno de mis scripts utilizando Tkinter. Agregar llamada a mainloop () solucionó el problema. Consulte este tutorial para ver un ejemplo: [http://sebsauvage.net/python/gui/#import 1

    En mi caso, en la función init tengo

     def __init__(self,Width=400, Height=400): # Create GUI window ------------------------------ win = Tk() ... 

    al final de init agregué:

      win.mainloop() 

    Ahora funciona simplemente ejecutando el archivo. Espero que esto ayude

    Un problema similar para mí ahora, en mi primera semana con python. Pero recordé vagamente un problema similar con un simple script de prueba inicial y pensé que el problema era # comentarios. Así que lo intenté con mi script .py infundido Tkinter. Funcionó bien en IDLE como usted lo dice, luego solo parpadeaba cuando se hacía clic en windows. Pero había un par de líneas comentadas en la parte superior del archivo.

    Los saqué a todos y ahora no corre sudor directamente en las ventanas. Echa un vistazo .. para #.

    Lo sentimos, parece que no puede eliminar esta publicación. Ahora los archivos de trabajo #comentarios incluidos. No sé qué pasa con eso. ..

    Encontré que cambiar el archivo py ejecutable a un archivo file.pyw solucionó el problema. Esto le indica a python que lo ejecute utilizando el pythonw.exe que ejecuta el script sin el terminal / consola en segundo plano.

    No estoy seguro de por qué funciona esto, tal vez algunas variables de entorno arruinadas de una instalación de python anterior.