_tkinter.TclError:无法识别图像文件中的数据

时间:2017-08-17 13:31:49

标签: python image python-3.x tkinter png

你好

所以我有一个Tkinter GUI'd程序,它从一开始就使用.png图像。

我使用PyCharm,它可以正常使用Python3和Tkinter,没有任何外部模块。

但是当我从终端运行它时我得到了这个:

someUser@somePC:~/KeyRunner$ python3 windowLOGIN.py

Traceback (most recent call last):
File "windowLOGIN.py", line 141, in <module>
app = WindowLogin(root)
File "windowLOGIN.py", line 23, in __init__
img = tk.PhotoImage(file="keyrunnerlogo.png")
File "/home/someUser/anaconda3/lib/python3.6/tkinter/__init__.py", line 3539, in __init__
Image.__init__(self, 'photo', name, cnf, master, **kw)
File "/home/someUser/anaconda3/lib/python3.6/tkinter/__init__.py", line 3495, in __init__
self.tk.call(('image', 'create', imgtype, name,) + options)

_tkinter.TclError: couldn't recognize data in image file "keyrunnerlogo.png"

如果我用 sudo 运行它,它运行正常,任何想法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

问题解决了卸载anaconda3 (位于我的主目录中),它有较低版本的tkinter和python导入它而不是更好的。

我认为可以通过更新anaconda3软件包来解决,但对我来说没有必要。

感谢 @Lafexlos 告诉我检查版本。