所以我正在运行以下代码:
from tkinter import *
# Variables
HomeGUI = Tk()
CamBut = Button(HomeGUI)
CamLogo = PhotoImage(file=r"C:UsersadityPycharmProjectsFront End for MediScanCamLogo.PNG")
# Function opens GUI for home screen
def runhome():
# Setting global variables
global CamBut
global HomeGUI
CamBut.config(image=CamLogo)
CamBut.pack()
HomeGUI.mainloop()
runhome()
我想使用相对路径访问CamLogo.PNG,因为直接路径在另一台设备上不起作用,我该怎么做?CamLogo.png与上面的代码在同一个文件夹中。
如果它在同一个文件夹中,那么您只需执行:
CamLogo = PhotoImage(file="CamLogo.PNG")
如果PNG与Python脚本位于同一目录中,则可以通过其基名称来引用它。
然而,当有人修改你的代码并添加os.chdir("其他目录"(时会发生什么?那么这种策略就行不通了。
这样会更安全:
import os
myPNG = 'CamLogo.PNG'
pathToPNG = os.path.join(os.path.dirname(__file__), myPNG)
然后,您可以使用pathToPNG,而不用担心代码中其他地方的目录可能会发生任何更改。
当然,pathToPNG是绝对的,但它是一种更稳健的方法