Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用tkinter的Python程序在Windows 10中立即关闭_Python_Python 3.x_Tkinter_Windows 10_Python 3.6 - Fatal编程技术网

使用tkinter的Python程序在Windows 10中立即关闭

使用tkinter的Python程序在Windows 10中立即关闭,python,python-3.x,tkinter,windows-10,python-3.6,Python,Python 3.x,Tkinter,Windows 10,Python 3.6,有关守则: from tkinter import * root = Tk() test_label = Label(root, text = "Hello") test_label.pack() root.mainloop() 我只能在空闲状态下运行这个python代码,如果我以任何其他方式运行它,窗口会在屏幕上闪烁并立即关闭。我试过: -添加“输入”行以防止其关闭 -从windows powershell运行 -使用pyinstaller将代码编译成EXE 现在我找不到任何其他的建议

有关守则:

from tkinter import *

root = Tk()

test_label = Label(root, text = "Hello")
test_label.pack()

root.mainloop()
我只能在空闲状态下运行这个python代码,如果我以任何其他方式运行它,窗口会在屏幕上闪烁并立即关闭。我试过:

-添加“输入”行以防止其关闭

-从windows powershell运行

-使用pyinstaller将代码编译成EXE

现在我找不到任何其他的建议。我试着制作一个简单的单行程序,只要求输入,并且工作正常,保持良好的开放性。tkinter程序在空闲时工作正常,但在任何其他情况下都不能工作。 这里发生了什么事

编辑:如果从命令行而不是windows 10 powershell运行该程序,则会得到以下输出:

Traceback (most recent call last):
  File "C:\Users\Cam\Desktop\CSCI Notes\Programs\test.py", line 1, in 
<module>
    import tkinter
ImportError: No module named tkinter
回溯(最近一次呼叫最后一次):
文件“C:\Users\Cam\Desktop\CSCI Notes\Programs\test.py”,第1行,在
进口tkinter
ImportError:没有名为tkinter的模块

但是,tkinter文件在我的计算机上的python库中,在python shell或IDLE中导入tkinter效果很好。

当我在命令提示符下运行python时,它显示python 2.7,因此我将tkinter更改为
tkinter
,程序通过导入
.py
文件来工作

使用cmd:

Pyinstaller可以工作(通过canopy cmd提示符):

第一行是我在IDLE的cmd提示符中输入的内容

执行时将填充文件夹:

在dist内部,我运行显示窗口的
test.exe


注意:我的系统命令提示符使用Python2.7,而canopy(python环境)命令提示符使用pyinstaller的3.5好的,我想我已经解决了这个问题!我读到windows有时可以尝试用Python2.7打开.py文件,即使它们是用3.6编写的。我从计算机上卸载了Python2.7,现在文件运行正常


因此,对于有此问题的任何人,请确保您的计算机正在打开python 3,而不是python 2。

我也遇到过此问题,据我所知,没有人有合适的解决方案

我发现最好的方法是在文件名前面加-I。例如: python-i yourfile.py


这将在命令行中启动空闲

请不要链接到其他站点上的代码。请在问题中加上一个(例如:你的“小小的tkinter脚本”)谢谢,我很感激礼仪提示。固定的!调试此类问题的常用方法是从命令提示符下运行程序,以便可以看到可能生成的任何错误消息。您显然已经尝试过了,那么当您从shell运行它时,输出是什么?您是否尝试重新安装/更新tkinter?当我从windows powershell运行时,没有任何错误消息或其他类型的输出。python外壳闪烁了不到一秒钟并立即关闭,就像我在windows资源管理器中双击了.py文件一样。这是一个已知的问题。Windows似乎通常默认为python 2.7。这是一个可以解决的问题。您还可以尝试添加
#!python3
作为脚本中请求python3解释器的第一行。