我正在尝试使用tkinter模块打开一个窗口来显示图片,之前遇到了问题:_tkinter.TclError: couldn't recognize data in image 我已经使用以下这个问题将我的代码重组为以下内容: How do I insert a JPEG image into a python Tkinter window? 当我使用python 3时,我对代码做了一些更改。 当我尝试执行代码时:我收到一条错误消息,指出没有文件或目录存在。但是,我使用以下代码来检查: python open() method IOError: [Errno 2] No such file or directory: 以下是检查文件的结果:
>>> os.listdir()
['comments.py', 'Conan.txt', 'conditions.py', 'dateandtime.py', 'desktop.ini', 'dictionaries.py', 'exceptions.py', 'forging_functions.py', 'formatting.py', 'graphics.py', 'Hello.py', 'leapdays.py', 'logging.py', 'loop.py', 'modules.py', 'months.py', 'numbers.py.py', 'Opening_files.py', 'Picture.jpg', 'print_hello.py.py', 'tkintercode1.py', 'tkintercode2.py', 'user_input.py', 'Writing_file.py', '__pycache__']
>>> os.getcwd()
'C:\\Users\\Draco\\OneDrive\\Documents\\Programming'
>>> os.chdir(r'C:\\Users\\Draco\\OneDrive\\Documents\\Programming')
>>> open('Picture.jpg')
<_io.TextIOWrapper name='Picture.jpg' mode='r' encoding='cp1252'>
以下是我正在使用的代码:
import tkinter as tk
from tkinter import *
window = tk.Tk()
window.title("Random Image")
window.geometry("300x300")
window.configure(background='grey')
path = "C:\Draco\OneDrive\Documents\Programming\Picture.jpg"
img = tkinter.PhotoImage(Image.open(path))
panel = tk.Label(window, image = img)
panel.pack(side = "bottom", fill = "both", expand = "yes")
window.mainloop()
非常感谢您的帮助
答案 0 :(得分:1)
"C:\Draco\OneDrive\Documents\Programming\Picture.jpg"
尝试path ="C:\\Draco\\OneDrive\\Documents\\Programming\\Picture.jpg"
- 双斜线
编辑
你有路径差异。用户\ Draco,但代码只是Draco