Напишите функцию, которая будет принимать строку и возвращать отсортированный список трехбуквенных групп. Список формируется следующим образом: берем первые три буквы строки, затем сдвигаемся на одну букву и берем следующие три буквы и т. д. Если в переданной строке меньше трех букв, нужно вернуть пустой список.
Разбор примера
three_letter_collection("python") ➞ ["hon", "pyt", "tho", "yth"] # 1-я группа: "hon" # 2-я группа: "pyt" # 3-я группа: "tho" # 4-я группа: "yth" # Не забудьте отсортировать список!
Примеры
three_letter_collection("slap") ➞ ["lap", "sla"] three_letter_collection("click") ➞ ["cli", "ick", "lic"] three_letter_collection("cat") ➞ ["cat"] three_letter_collection("hi") ➞ []
Варианты решения
def three_letter_collection(s): return sorted(s[i:i+3] for i in range(len(s)-2))
def three_letter_collection(s): return sorted(a+b+c for a,b,c in zip(s, s[1::], s[2::]))
def three_letter_collection(s): length = len(s) res = [] if length < 3: return res for i in range(0, length -2): res.append(s[i:i+3]) res.sort() return res