@PosikGG

Что делает эта строка?

Полный код:
def MyFunc(i):
    tmp = int(i) ** 2
    return True if str(tmp)[-len(i):] == i else False
 
 
n = input('Введите N:')
for i in range(1, int(n) + 1):
    if MyFunc(str(i)):
        print(f'{i}*{i}={i * i}')


Меня интересует эта строка:
return True if str(tmp)[-len(i):] == i else False

А именно: str(tmp)[-len(i):] == i
Что это такое? Объясните пожалуйста!!
  • Вопрос задан
  • 101 просмотр
Пригласить эксперта
Ответы на вопрос 1
@Vindicar
str(tmp)[-len(i):] == i
в tmp лежит квадрат числа, строковая запись которого лежит в i
str(tmp) - преобразует квадрат числа i в строку
[-len(i):] - срез строки, включающий в себя len(i) последних символов.
Таким образом, выражение проверяет, заканчивается ли строковая запись квадрата числа на само это число.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы