Mac Python 3.4.4,导入files/images,tkinter
Mac Python 3.4.4, importing files/images, tkinter
我无法使用 tkinter 在 canvas 上显示图像。我相信问题出在我不正确地加载图像。下面是我正在努力工作的代码。 “ file='Users/ramos1992/Desktop/test_image.gif' ”是我尝试从我的桌面加载图像。
from tkinter import *
tk = Tk()
canvas = Canvas(tk, width=400, height=400)
canvas.pack()
my_image = PhotoImage(file='Users/ramos1992/Desktop/test_image.gif')
canvas.create_image(0, 0, anchor=NW, image=my_image)
mainloop()
使用 Mac 加载文件的正确方法是什么?我怎样才能使代码工作?
路径/Users/ramos1992/Desktop/test_image.gif
,前导斜线,是绝对路径:它从硬盘的顶部开始,得到名为[=11的目录=] 在那里,然后在那里获取名为 ramos1992
的目录,依此类推。
没有前导斜杠的路径 Users/ramos1992/Desktop/test_image.gif
是 相对路径 :它从当前工作目录开始。比如说,这可能是 /Users/ramos1992/Documents/Python Projects
。所以,你最终在 /Users/ramos1992/Documents/Python Projects/Users/ramos1992/Desktop/test_image.gif
中查找,当然没有这样的位置。
有关详细信息,请参阅维基百科 absolute and relative paths。
以防万一您(或阅读本文的其他人)是过去的经典 Mac 专家并且感到困惑:绝对路径与相对路径的语法几乎完全相反在经典 Mac OS 风格路径和现代 Mac OS X 风格 (Unix) 路径之间。没有前缀的旧式 Drive:Folder:Folder:File
是 /Drive/Folder/Folder/File
,而有前缀的旧式 :Folder:File
是 ./Folder/File
,实际上与 Folder/File
相同, 没有前缀。
我无法使用 tkinter 在 canvas 上显示图像。我相信问题出在我不正确地加载图像。下面是我正在努力工作的代码。 “ file='Users/ramos1992/Desktop/test_image.gif' ”是我尝试从我的桌面加载图像。
from tkinter import *
tk = Tk()
canvas = Canvas(tk, width=400, height=400)
canvas.pack()
my_image = PhotoImage(file='Users/ramos1992/Desktop/test_image.gif')
canvas.create_image(0, 0, anchor=NW, image=my_image)
mainloop()
使用 Mac 加载文件的正确方法是什么?我怎样才能使代码工作?
路径/Users/ramos1992/Desktop/test_image.gif
,前导斜线,是绝对路径:它从硬盘的顶部开始,得到名为[=11的目录=] 在那里,然后在那里获取名为 ramos1992
的目录,依此类推。
没有前导斜杠的路径 Users/ramos1992/Desktop/test_image.gif
是 相对路径 :它从当前工作目录开始。比如说,这可能是 /Users/ramos1992/Documents/Python Projects
。所以,你最终在 /Users/ramos1992/Documents/Python Projects/Users/ramos1992/Desktop/test_image.gif
中查找,当然没有这样的位置。
有关详细信息,请参阅维基百科 absolute and relative paths。
以防万一您(或阅读本文的其他人)是过去的经典 Mac 专家并且感到困惑:绝对路径与相对路径的语法几乎完全相反在经典 Mac OS 风格路径和现代 Mac OS X 风格 (Unix) 路径之间。没有前缀的旧式 Drive:Folder:Folder:File
是 /Drive/Folder/Folder/File
,而有前缀的旧式 :Folder:File
是 ./Folder/File
,实际上与 Folder/File
相同, 没有前缀。