11. Вызов методов цепочкой в Python
В предыдущем уроке мы еще раз повторили преобразование и научились проверять типы. Часто с данными необходимо выполнить несколько операций подряд, например:
str = "Hello, World"
l_str = str.split(',')
first_word = l_str[0]
s_first_word = set(first_word)
c = s_first_word.__len__()
print(c) # => 4
В этом абстрактном примере мы при помощи метода split()
, который разбивает строку на список, где разделитель указывается в качестве параметра, получаем первое слово, находим, из каких уникальных букв оно состоит, и выводим их количество. Не обращайте внимания на суть примера, сейчас нам необходимо разобраться с так называемым «методом цепочки».
Как видите, нам необходимо было создать несколько промежуточных переменных, чтобы получить конечный результат. Но можно это избежать. Так как все методы (и функция set()
) возвращают объекты, то мы можем объединить все эти строки в один оператор. Вот упрощенный предыдущий пример:
set(str.split(',')[0]).__len__() # => 4
Цепочка методов устраняет дополнительную переменную, что снимает с разработчика бремя запоминания переменных и существенно уменьшает объем кода. В свою очередь, код может показаться сложнее для восприятия.
В самом начале изучения языка вы вряд ли будете использовать такой метод, так как проще и понятнее создавать промежуточные переменные.
В этом уроке информация была приведена в ознакомительных целях, по мере изучения языка вы можете вернуться к этому уроку.