Задать вопрос

Как указать в коде, что заданный индекс выходит за границу всей строки?

Нужно прописать 4 условия:
Функция возвращает False, если хотя бы одно из условий истинно:

Отрицательная длина извлекаемой подстроки.
Отрицательный заданный индекс.
Заданный индекс выходит за границу всей строки.
Длина подстроки в сумме с заданным индексом выходит за границу всей строки.
Вот код:
def f(string, index, length):
    if length < 0:
        return 'False'
    if index < 0:
        return 'False'
    if index > len(string) - 1:
        return 'False'
    if length + index > len(string):
        return 'False'
    return 'True'
string = 'Winter is comming'
print(f(string, 4, length=4))

По оперативным данным 3 if не корр
  • Вопрос задан
  • 161 просмотр
Подписаться 2 Простой 6 комментариев
Решения вопроса 1
Mike_Ro
@Mike_Ro Куратор тега Python
Python, JS, WordPress, SEO, Bots, Adversting
def f(string, index, length):
    return not (length < 0 or index < 0 or index >= len(string) or length + index > len(string))

string = 'Winter is coming'

print(f(string, 4, 4))
# True

print(f(string, 4, -1))
# False

print(f(string, -1, 4))
# False

print(f(string, len(string), 4))
# False

print(f(string, len(string) - 3, 5))
# False
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы