WedX - журнал о программировании и компьютерных науках

Как мне решить ошибку _tkinter.TclError: не удалось открыть sample.png: нет такого файла или каталога

У меня есть код в той же папке, что и мое изображение. Я новичок, поэтому я не уверен, но может ли это быть моей IDE (визуальный код студии)

Я пробовал использовать PLE?? но это не сработало

import tkinter as tk 


HEIGHT =  700 
Width = 800


root = tk.Tk()

canvas = tk.Canvas(root, height = HEIGHT , width = Width)
canvas.pack()

background_image  = tk.PhotoImage(file = "sample.png")
back_label = tk.Label(root,Image = background_image)
back_label.place(relwidth = 1 ,relheight = 1)


root.mainloop()

  • Как вы запускали свой скрипт на Python? 02.03.2021
  • Если он говорит, что нет такого файла, это означает, что такого файла нет. Убедитесь, что путь действителен. Также должно быть image=background_image. 02.03.2021
  • Находится ли файл в том же каталоге, что и программа, в которой он запущен? Попробуйте ./sample.png 02.03.2021

Ответы:


1

не удалось открыть «sample.png»: нет такого файла или каталога означает, что ваш файл находится не в том месте, у вас есть 2 варианта: либо вы перемещаете его туда, где вы его запускаете, либо вы используете абсолютный путь

02.03.2021

2

Прежде всего, я думаю, что вы должны использовать весь путь к изображению (я не уверен, но я использую Ubuntu, и я должен использовать полный путь). Затем я немного меняю код, и это работает для меня.

import tkinter as tk 


HEIGHT =  700 
Width = 800


root = tk.Tk()

canvas = tk.Canvas(root, height = HEIGHT , width = Width)
canvas.pack()



background_image=tk.PhotoImage(file = "sample.png")
background_label = tk.Label(root, image=background_image)
background_label.place(x=0, y=0, relwidth=1, relheight=1)

root.mainloop()
02.03.2021
  • Кодек unicodeescape не может декодировать байты в позиции 2-3: усеченный экран \UXXXXXXXX 04.03.2021

  • 3

    Это также может иметь значение, откуда вы выполняете скрипт python, если вы делаете это через терминал. Если, например, вы запускаете скрипт из /home/usrname и выполняете что-то вроде ›› ./downloads/src/run.py, ваш относительный путь будет /home/usrname/, а не /home/usrname/downloads/src/ . Если вы перейдете в эту папку и попытаетесь запустить скрипт Python, он может внезапно найти это изображение.

    Таким образом, решением было бы использовать полный путь для изображения или, возможно, есть лучшие способы установить относительный путь. я не знаю

    02.03.2021
    Новые материалы

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..


    Для любых предложений по сайту: [email protected]