-2

我制作了一个程序,我需要 python 文件所在目录中的文件。这些文件位于 python 文件所在的同一文件夹中。

我无法在 python 脚本中写入文件的完整路径我在脚本中使用了./方法,但它给出了错误

请帮我解决问题

这是我的代码

'''

#代码

root=Tk()
root.title("SOHAM YOUTUBE VIDEO DOWNLOADER")
root["bg"]='#1F1F1F'
root.iconbitmap("./img/youtube_(1).ico")
root.geometry("900x680")

file =PhotoImage(file="./img/youtube-icon.png")
headingIcon=Label(root, image=file)
headingIcon.pack(side=TOP, pady=3)

'''

我的文件夹位置

这里 img 是 YOUTUBE_VEDIO_DOWNLOADER.py 中我需要的文件夹,这是我的 python 文件

这里imgYOUTUBE_VIDEO_DOWNLOADER.py中我需要的文件夹,这是我的 python 文件

我的脚本错误如下

y"python "e:/python projects/YOUTUBE VIDEO DOWNLOADER/YOUTUBE_VIDEO_DOWNLOADER.py
Traceback (most recent call last):*emphasized text*
  File "e:\python projects\YOUTUBE VIDEO DOWNLOADER\YOUTUBE_VIDEO_DOWNLOADER.py", line 215, in <module>
    root.iconbitmap("./img/youtube_(1).ico")
  File "C:\Users\soham\AppData\Local\Programs\Python\Python39\lib\tkinter\__init__.py", line 2073, in wm_iconbitmap
    return self.tk.call('wm', 'iconbitmap', self._w, bitmap)
_tkinter.TclError: bitmap "./img/youtube_(1).ico" not defined
4

1 回答 1

2

我用来解决这个问题的一个技巧是使用__file__变量(保存脚本文件的路径)作为我的参考路径,然后将路径写入我想要的文件。

如果您的目录如下所示:

my_dir
|> my_script.py
|> img/
   |> my_img.png

那么__file__将等于C:\\...\my_dir\my_script.py

你的形象将是os.path.join(os.path.dirname(__file__), 'img', 'my_img.png')

于 2020-10-22T13:43:39.950 回答