Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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
User interface 从Linux桌面运行时,Python 3.2脚本不工作和/或导入tkinter_User Interface_Python 3.x_Tkinter_Ubuntu 12.04_Desktop - Fatal编程技术网

User interface 从Linux桌面运行时,Python 3.2脚本不工作和/或导入tkinter

User interface 从Linux桌面运行时,Python 3.2脚本不工作和/或导入tkinter,user-interface,python-3.x,tkinter,ubuntu-12.04,desktop,User Interface,Python 3.x,Tkinter,Ubuntu 12.04,Desktop,我真的很困惑,但答案可能很简单,就是看不出来: 我有一系列python模块,它们在python解释器中工作良好,但在GUI环境下运行时不会发生任何事情。我尝试创建一个.desktop文件,添加shebangs,将所有模块的权限更改为777,并重命名为.pyw。单个测试模块本身工作正常,所以我知道这不是打字错误 如果我单击主module.pyw文件并从系统对话框中单击“运行”,则根本不会发生任何事情。类似地,.py文件(和.desktop菜单)。。。没有什么。以下是我的代码的开头:# 如果我在sd

我真的很困惑,但答案可能很简单,就是看不出来:

我有一系列python模块,它们在python解释器中工作良好,但在GUI环境下运行时不会发生任何事情。我尝试创建一个.desktop文件,添加shebangs,将所有模块的权限更改为777,并重命名为.pyw。单个测试模块本身工作正常,所以我知道这不是打字错误

如果我单击主module.pyw文件并从系统对话框中单击“运行”,则根本不会发生任何事情。类似地,.py文件(和.desktop菜单)。。。没有什么。以下是我的代码的开头:#

如果我在sdg=tk.simpledialog行后面加上k=msg.bathror(“xxxx”,“yyyy”),仍然没有发生任何事情,这使我相信tkinter由于某种原因没有加载

有什么想法吗?

对于Python 2,请尝试:

import tkMessageBox
import tkSimpleDialog

msg = tkMessageBox
sdg = tkSimpleDialog
或更简单:

import tkMessageBox as msg
import tkSimpleDialog as sdk
from tkinter import messagebox as msg
from tkinter import simpledialog as sdg
对于Python 3,请尝试:

from tkinter import messagebox
from tkinter import simpledialog

msg = messagebox
sdg = simpledialog
或更简单:

import tkMessageBox as msg
import tkSimpleDialog as sdk
from tkinter import messagebox as msg
from tkinter import simpledialog as sdg

如果在终端中运行代码:
python script_name.py
,会发生什么?好问题,我得到:回溯(最近一次调用):文件“capitalizer.pyw”,第6行,msg=tk.messagebox AttributeError:“module”对象没有属性“messagebox”。似乎表明我正在尝试运行tkinter的2个版本,也许?添加完整的回溯到您的问题。并在代码行中标记回溯(第6行)。哦,谢谢,工作如梦。问题是,我的编码有什么不同?一件好事是,我刚刚了解了回溯,不知道它的存在,但在这种情况下它没有帮助。。。它没有返回任何错误(sys也没有)。只有在终端中运行代码时,才能看到回溯。这次回溯帮助——“第6行”,“对象没有属性”是找到解决方案的线索。有些lib有更多的文件/元素,您必须分别导入每个元素(这样,内存中就不会有不需要的元素)。顺便说一下:我使用简单编辑器Geany(在LinuxMint上)编写代码,Geany总是在终端上运行代码,这样我可以看到错误,我可以使用“打印”查看测试代码中的值。好的,谢谢你的帮助。很多年前,我开始在Unix和C上编程,改为MSDOS和QB,然后是Windows和VB。最近,我决定删除所有Windows系统,因此迁移(返回)到Linux和Python。到现在为止,一直都还不错!