Как правильно распознать тег?

#python #tkinter #canvas #tags

#python #tkinter #холст #Теги

Вопрос:

Я хочу создать код, который делает что-то только в том случае, если тег объекта соответствует интересующим символам. Что я сделал, так это написал это:

 if str(canvas.gettags(object))=='thistag':
    do_this_thing(object)
else: 
    pass
 

Когда я запускаю код, кажется, что тег никогда не совпадает. Итак, я печатаю тег в условии else и получаю следующее:
('thistag',) .

Как я должен написать тег, чтобы его можно было распознать?

Комментарии:

1. Вы пробовали print(canvas.gettags() и проверяли, что это то, что вы хотите?

2. Попробуйте if 'thistag' in canvas.gettags(object) . Не используйте ключевое слово ( object ) в качестве переменной.

Ответ №1:

gettags возвращает кортеж, поэтому вам нужно сравнить его с кортежем или проверить, является ли ваш тег частью кортежа.

 if (canvas.gettags(object) == ('thistag',)):
    ...
 

… или …

 if 'thistag' in canvas.gettags(object):
    ...