Добрый день! В этой неделе мы будем изучать методы. Мы уже немного с ними познакомились в прошлый раз, когда говорили про метод split, который позволяет преобразовать строчку в список. Методы есть у строк, у списков, да и не только у них. Начнем мы с методов строк и поговорим про то, что можно узнать про строку, как можно ее поменять, ну и в конце еще раз посмотрим на то, как строка преобразуется в список. Коротко напомню, что метод- это такая команда, которая относится к своему типу данных. Например, методы строк работают только со строками, методы списков работают только со списками. И эта команда всегда пишется через точку после названия переменной или после самих данных. Для начала что мы можем сделать со строчкам? Мы можем проверить, какие они. Например, мы можем проверить, состоит ли наша строка только из цифр или состоит ли наша строка только из букв только в нижнем регистре, то есть маленьких, ни одной большой. И мы можем попросить компьютер напечатать свое мнение про то, состоит ли строка 42 только из цифр или строка "4 плюс 2 это шесть" только из цифр, состоит ли только из маленьких букв слово привет на русском и английском языках. И мы видим, что компьютер выдает нам логические переменные. Ture или false, истина или ложь. Что означает, что эти методы мы можем использовать внутри цикла while или внутри условного оператора if. Кроме этого мы можем посмотреть, сколько раз встречаются нужные нам символы в строке, с помощью метода count. С помощью методов find и rfind мы можем найти индекс символа, который нас интересует. Когда он встречается в строке первый раз и когда он встречается в строке в последний раз. Посмотрим, как это работает. Например в строке 42!42!42 число 42 встречается вроде бы три раза. Первый раз число 42- я говорю число, но для компьютера это все строки, ведь они в кавычках- начинается на нулевом индексе. Последний раз оно начинается на предпоследнем индексе, то есть на шестом. И компьютер в принципе со мной согласен. Посмотрим, как работают методы, которые что-то меняют в нашей строке. Важный комментарий: методы, которые меняют строку, на самом деле создают новую, ведь строку нельзя поменять, это неизменяемый тип данных. Есть два метода. Метод replace и метод stirp. Метод replace смотрит на строку, ищет те символы, которые надо заменить и создает новую строку, где все эти наши старые символы, которые надо заменить, заменены новыми. Метод strip создает новую строку, удалив лишние символы- в нашем случае это пробелы- по бокам, справа и слева у старой строки. Посмотрим, как это работает. У нас есть строка, которая случайно начинается с пробела, о том, что 42 это 40 плюс два. После того как мы применили метод strip, была создана новая строка, в которой на один символ меньше, и как видно, теперь она начинается не с пробела, а с цифры 4. Посмотрим, как работает метод replace. Мы можем заменить число 42 на слово "ответ". И в этом случае опять же создана новая строка, в которой вместо двух символов под первым и вторым индексом появилась шесть символов, куда вписано слово ответ, answer. Остальные символы в строке пропорционально сдвинулись, что видно из таблицы. Еще раз посмотрим на метод split. В прошлый раз на прошлой неделе мы пользовались им, чтобы разбивать нашу строчку по пробелам. На самом деле, мы можем разделить строчку на список по любому символу или по любым символам, которые нам нужны. В простом случае у нас есть строка "Первый Второй Третий", где три слова написаны через пробел. Мы можем разделить ее просто командой spilt без разделителя, без какого-либо аргумента, и она прекрасно справится со своей работой. Таблица с индексами, таблица того, как устроен получившийся список, на слайде. Но может быть, что нам дают элементы списка, например, через запятую. В этом случае нам тоже поможет команда split. Мы можем сказать ей "раздели, пожалуйста" и в качестве аргумента указать "по запятой". В этом случае команда split опять же прекрасно справится с работой. При этом, обратите внимание, в третьем элементе списка теперь лежит строка "Третий и всё", где есть два проблема, на которые в этот раз команда split ни малейшего внимания не обратила. Давайте поработаем с какими-нибудь сложными текстами, например с текстом генетического кода. [МУЗЫКА]