Нет способа действительно узнать почему? , поскольку это нигде не задокументировано (насколько я знаю).
Это просто дизайнерское решение, принятое авторами tkinter
: т.е. это не считается ошибкой, если ни один элемент не соответствует. Я предполагаю, что поскольку цель состоит в том, чтобы избавиться от чего-либо, не важно, было ли это там заранее или нет, не важно.
Если зная, имеет ли это значение или нет, имеет значение в вашей ситуации, вы можете сначала использовать метод Canvas.find_all()
и посмотреть, является ли список, который он возвращает, пустым.