Метод hasKey возвращает булево. Сравнивать его с True не нужно.

Зачем вы делаете копию строки?