#10. Основные методы строк | Python для начинающих

Обучающий курс: stepik.org/course/100707
Узнаете, что такое методы, как они вызываются и какие основные методы существуют у строк:
String.upper() - Возвращает строку с заглавными буквами
String.lower() - Возвращает строку с малыми буквами
String.count(sub[, start[, end]]) - Определяет число вхождений подстроки в строке
String.find(sub[, start[, end]]) - Возвращает индекс первого найденного вхождения
String.rfind(sub[, start[, end]]) - Возвращает индекс первого найденного вхождения при поиске справа
String.index(sub[, start[, end]]) - Возвращает индекс первого найденного вхождения
String.replace(old, new, count=-1) - Заменяет подстроку old на new
String.isalpha() - Определяет: состоит ли строка целиком из буквенных символов
String.isdigit() - Определяет: состоит ли строка целиком из цифр
String.rjust(width[, fillchar = ‘ ‘]) - Расширяет строку, добавляя символы слева
String.ljust(width[, fillchar = ‘ ‘]) - Расширяет строку, добавляя символы справа
String.split(sep=None, maxsplit=-1) - Разбивает строку на подстроки
String.join(список) - Объединяет коллекцию в строку
String.strip() - Удаляет пробелы и переносы строк справа и слева
String.rstrip() - Удаляет пробелы и переносы строк справа
String.lstrip() - Удаляет пробелы и переносы строк слева
Telegram-канал: t.me/python_selfedu
Все уроки по Python: • Добрый, добрый Python ...

Пікірлер: 116

  • @user-yv2ck6vg4e
    @user-yv2ck6vg4e2 жыл бұрын

    самый лучший канал с самыми лучшими объяснениями!!!

  • @karandalliik
    @karandalliik2 жыл бұрын

    Уже строки знаю идеально! Но. Как дань уважения, отличному учителю, обязан выразить и почтение и уважение. Спасибо)

  • @Developer_python_

    @Developer_python_

    Жыл бұрын

    всі 80 методів?

  • @user-ne1sx6xx3h
    @user-ne1sx6xx3h2 жыл бұрын

    У вас удивительный талант, объяснять легко и просто. Не бросайте это.

  • @user-th6ok1yy1v
    @user-th6ok1yy1v Жыл бұрын

    Не перестаю удивляться качеству ваших курсов. Спасибо Вам

  • @highlow_all
    @highlow_all Жыл бұрын

    Ох, огромный объём, который нужно запомнить. Адовая музыка в конце урока, тому подтверждение тутутутуту* Спасибо за ваш труд, очень информативно и полезно.

  • @andreychernykh256
    @andreychernykh2562 жыл бұрын

    почему у разного рода словоблудов которые учат выучить язык за час сотни тысяч просмотров а у настоящего Учителя так мало подписчиков и просмотров?((((

  • @belka73km

    @belka73km

    Жыл бұрын

    люди ленивые

  • @user-zi8wh6do5f
    @user-zi8wh6do5f9 ай бұрын

    10 видео подряд на одном дыхании!!! и все понятно! Благодарю!

  • @likeclockwork9600
    @likeclockwork96002 жыл бұрын

    Здорово, так разжевать и объяснить нужно уметь. Спасибо

  • @mikewazowski3035
    @mikewazowski3035 Жыл бұрын

    Гениально и просто. Преподаватель с Большой Буквы

  • @puncher-1
    @puncher-12 жыл бұрын

    Огромная Благодарность автору курса ! 10 урок слишком объемный, приходится , в отличии от остальных уроков, пересматривать …

  • @nadiapanova4442
    @nadiapanova44425 ай бұрын

    Господи, спасибо тебе за такого прекрасного преподавателя!!! Все по полочкам и четко. Сергей, я теперь ваша фанатка🤘

  • @user-cc4yv4un4v
    @user-cc4yv4un4v2 жыл бұрын

    Буду ждать с нетерпением следующий занятие! Подача максимально доходчиво.

  • @limoshkamilk9887
    @limoshkamilk98878 ай бұрын

    Сергей, спасибо Вам! Как всегда с большим удовольствием изучаю и впитываю Ваши курсы. ❤❤❤

  • @igorkulibaba7287
    @igorkulibaba72872 жыл бұрын

    Сергей здорово рассказываете, спасибо

  • @ASJxdmkrlv
    @ASJxdmkrlv2 жыл бұрын

    Спасибо Вам большое! Лучше, чем Вы этот материал преподнести просто невозможно!

  • @xalen1x334
    @xalen1x334 Жыл бұрын

    Огромное спасибо!Прохожу курс,но там объясняют мало,а задания сразу сложные.Благодаря Вам смог разобрать и понять тему

  • @4otakoe
    @4otakoe2 жыл бұрын

    Ты лучший, но hello воральд - это нечто :D

  • @return_1101
    @return_11012 жыл бұрын

    Интересные уроки! Спасибо вам!

  • @user-hv7wc2ir4t
    @user-hv7wc2ir4t Жыл бұрын

    Благодарю вас. Вы самый лучший учитель. Этот ролик и автор очень доступно объясняет. Такого я ещё не встречал. ТОП.

  • @user-hs3dr5zl9w
    @user-hs3dr5zl9w11 ай бұрын

    Спасибо Вам за понятное и простое объяснение данной темы!

  • @user-ir8wf3ll6j
    @user-ir8wf3ll6j2 жыл бұрын

    Добрый день. Все понятно и доступно. Спасибо за ваш труд!

  • @elen2662
    @elen26622 жыл бұрын

    Люблю ваши понятные лекции, спасибо

  • @olegtinkov6553
    @olegtinkov6553 Жыл бұрын

    Отличное объяснение, очень доступно и наглядно!!!!

  • @AZ993k
    @AZ993k Жыл бұрын

    Спасибо! Поглощаю уроки пачками. Действительно просто. Я ещё раньше не любил и не хотел учить питон за динамическую типизацию. Оказывается, это удобно. Тем более с таким учителем

  • @wainecst3862
    @wainecst38622 ай бұрын

    Моё подчтение!

  • @user-sr4rc8ry8p
    @user-sr4rc8ry8p2 жыл бұрын

    Спасибо за урок!

  • @MegaPsevdonim
    @MegaPsevdonim2 жыл бұрын

    Круто спасибо за урок, весьма познавательный

  • @user-su1wf3wz6c
    @user-su1wf3wz6c2 жыл бұрын

    Прекрасно, спасибо!

  • @vladimirastrelin1719
    @vladimirastrelin17192 жыл бұрын

    Спасибо..полезнейший урок

  • @77nixter
    @77nixter2 жыл бұрын

    Классный урок!

  • @lomeroneil89
    @lomeroneil892 жыл бұрын

    Очень грамотные объяснения и довольно понятные.😏

  • @quasaro8601
    @quasaro86012 жыл бұрын

    Спасибо офигенно

  • @user-vu7hz8hg1u
    @user-vu7hz8hg1u2 жыл бұрын

    "Самообразователь"-рулит

  • @impellergimpeller5133
    @impellergimpeller51332 жыл бұрын

    Спасибо! 👍👍👍👍👍

  • @user-cb7hj1qu7d
    @user-cb7hj1qu7d2 жыл бұрын

    Лучший!

  • @hitech6994
    @hitech69942 жыл бұрын

    Такой вопрос, часть функций пишутся x.func(), где x это "объект" на которым работает функция, а часть функция работают так func(x), насколько я понял первый вариант не будет работать при записи по второму варианту? И как отличить один вариант записи от второй, или просто надо запоминать?

  • @selfedu_rus

    @selfedu_rus

    2 жыл бұрын

    Первый вариант называется вызовом метода, а второй - вызов функции. Методы привязаны к объекту и, как правило, что-то делают с этим объектом. Ну а какие существуют методы и функции, конечно, нужно запоминать.

  • @sazhan_lofi7267
    @sazhan_lofi7267 Жыл бұрын

    Благодарю вас!

  • @andredru4278
    @andredru42784 ай бұрын

    Спасибо. "ущербный метод" - топ)))

  • @user-rn9uh7banivar
    @user-rn9uh7banivar3 ай бұрын

    Очень нравятся ваши ролики, спасибо. Скажите сколько времени занимает у Вас подготовка одного ролика? Качество и количество их поражает.

  • @selfedu_rus

    @selfedu_rus

    3 ай бұрын

    Спасибо! 4-6 часов при знании материала.

  • @user-xn5yo5rd7q
    @user-xn5yo5rd7q2 жыл бұрын

    У вас призвание преподавателя! Или вы очень тщательно подбираете материал. Всем бы учителям курсов программирования брать с вас пример. Учителя умные, знающие, но преподнести так грамотно материал не у всех получается.

  • @woodorsha2955
    @woodorsha2955 Жыл бұрын

    Длинный коооооооммеееннннттттт для продвижения ккккккаааааааааааанннннннннннннаааааааааллллллллллллааааааааааа и Лайк обязательно

  • @dilshodabdullayev1494
    @dilshodabdullayev149411 ай бұрын

    спасибо очень наглядно

  • @ruziliakalyon4168
    @ruziliakalyon41682 жыл бұрын

    супер ;-* Спасибо

  • @user-fz6oc7wk4m
    @user-fz6oc7wk4m3 ай бұрын

    Не до конца понимаю работу метода replace(). Если ранее говорилось что str имеет неизменимый тип даных, то каким образом мы меняем значение

  • @grayich
    @grayich2 жыл бұрын

    Есть ньюанс, не стоит полагаться на isalpha() isdigit() в реальных задачах, т.к. они обходятся юникодом. А значит эти методы лучше вообще не использовать )

  • @Younoski

    @Younoski

    Жыл бұрын

    Откуда такие скилы на 10 уроке?Ты повторяешь теорию?

  • @grayich

    @grayich

    Жыл бұрын

    @@Younoski Полезно на одну и ту-же тему смотреть уроки у разных людей ну и читать официальную документацию. Все подходят к подаче материала по разному, это даёт в итоге больший обзор. Ну и гуглить тоже полезно, чтоб увидеть примеры, понять ньюансы. Кстати в новых версиях питон подобные "уязвимости" вроде поправили, но это не точно. Юникод ещё долго будет проблемным. Не не поправили, к примеру берём цифру 𝟺 (U+1D7FA), isdigit() говорит, что это цифра, но при попытке присвоить переменной или сделать какую арифметическую операцию выскакивает ошибка, т.к. питон её воспринимает строчной.

  • @g19m74
    @g19m74 Жыл бұрын

    в некоторых случаях console-ый вариант представления урока сбивает с толку, вид вывод. На пример split и join , ... будут кавычки или нет , а запятые?

  • @gayratsaidakhmedov5451
    @gayratsaidakhmedov54516 ай бұрын

    спасибо

  • @ibrahimoglu
    @ibrahimoglu2 жыл бұрын

    👍👍

  • @Anonim-im6ln
    @Anonim-im6ln2 жыл бұрын

    Дякую.)

  • @evgeniyacteck6779
    @evgeniyacteck67792 жыл бұрын

    Подскажите, пожалуйста, ранее говорили о неизменности строк. Но методом replace легко меняются символы в той же строке. Как это согласуется?

  • @selfedu_rus

    @selfedu_rus

    2 жыл бұрын

    метод replace формирует и возвращает новую измененную строку

  • @evgeniyacteck6779

    @evgeniyacteck6779

    2 жыл бұрын

    @@selfedu_rus Спасибо, понятно. И это подтверждается новым id.

  • @rtxmisha

    @rtxmisha

    Жыл бұрын

    @@evgeniyacteck6779 id остается таким же

  • @Fravije
    @Fravije Жыл бұрын

    Добрый день! Спасибо за ваш курс, смотрю здесь, прохожу на степике. Есть одна непонятная вещь с методами join и split: почему в случае с функцией split в скобках стоит разделитель, а в join - название строки? Почему нельзя сделать по аналогии с другими методами: a.join(',')

  • @selfedu_rus

    @selfedu_rus

    Жыл бұрын

    Дело в том, что join - это метод строк, а на входе он получает список, который нужно объединить. В вашем примере a.join(',') переменная a должна вести на какую-либо коллекцию, т.е. join уже перестает быть методом строк и у всех коллекций нужно предусмотреть метод join, что неудобно. Поэтому, наверное, так и сделали.

  • @Fravije

    @Fravije

    Жыл бұрын

    @@selfedu_rus спасибо за такой быстрый ответ. Я изучаю Питон не так давно, но уже сейчас возникло желание как-то обобщить пройденные темы - например, строки, списки. Понять логику решения программ. Возможно, вопрос в простом переходе количества в качество и недостающем опыте... в общем, пока что во время решения задач я пишу код (как он должен выглядеть по моему представлению), а потом перебираю разные варианты если получается ошибка (скобки, методы, join, split...). До конца сам не понимаю что делаю, просто тупо тестирую до тех пор пока не получится нудный вариант. Например, если вместо разбития строки по словам ('Я', 'люблю', 'Питон') получается такой вариант: 'я' ' л' , ю', 'б', 'л', 'ю'... и т.д. я переставляю разные элементы синтаксиса, действуя скорее наощупь, чем с помощью знаний. Вопросы в связи с этим такие: - умение достигается чисто за счет повторения? или можно как-то постичь логику решения задач? - есть ли какие-то материалы (курсы, таблицы... что угодно) где обобщена логика решения? методы, функции, их реализация? после чего можно будет сразу понять, для какой цели какие методы решения нужны. Надеюсь, что мой вопрос понятен, несмотря на некоторую сумбурность. Очень интересует ваше мнение по этому поводу.

  • @user-ji3et9wq1y
    @user-ji3et9wq1y Жыл бұрын

    Спасибо большое. Где- то прочитал что пайтон это как океан, сначала идешь себе по шельфу, все понятно вроде и ясно, а потом резко глубина в несколько километров))) Почему когда к str применяешь метод(upper, lower) пайтон создает новый объект, отличающийся от первоначального соответственно методу. А при применении title изменяется существующий объект. Ведь объект str неизменяемый?

  • @user-ji3et9wq1y

    @user-ji3et9wq1y

    Жыл бұрын

    Нет, я не прав был, title также создает новый объект

  • @user-hi1bw5gb3r
    @user-hi1bw5gb3r2 жыл бұрын

    Такую информацию сложно помнить долго если не работаешь с этим постоянно :(

  • @Artem_N86
    @Artem_N862 жыл бұрын

    Почему в примере о join не использовать replace, вместо join + split?

  • @selfedu_rus

    @selfedu_rus

    2 жыл бұрын

    если будет несколько пробелов (а не один), то придется прописывать несколько replace

  • @jamjam3337
    @jamjam3337 Жыл бұрын

    👏👍

  • @user-cz5uc2wq2m
    @user-cz5uc2wq2m3 ай бұрын

    топ

  • @folklornykot
    @folklornykot2 жыл бұрын

    Здравствуйте, скажите пожалуйста как переходить на здания с практикой сразу по этому уроку?

  • @selfedu_rus

    @selfedu_rus

    2 жыл бұрын

    Курс здесь: stepik.org/course/100707/

  • @gfhitdxaahn

    @gfhitdxaahn

    Жыл бұрын

    @@selfedu_rus это именно то, что я искал...

  • @user-ey2qb5dy7k
    @user-ey2qb5dy7k Жыл бұрын

    Добрый день! Сергей, а можно получить ваше фирменное, понятное объяснение, почему первый вариант не работает? Ошибка: AttributeError: 'str' object has no attribute 'len' text = 'Hello world' print(text.strip().len()) # не работает print(text.strip().__len__()) # работает Одно из объяснений ниже, но я пока всё равно не могу понять. "Потому что в пайтоне нет у строк именно метода .len(). Есть метод __len__(), и он как раз вызывается с помощью функции len()"

  • @selfedu_rus

    @selfedu_rus

    Жыл бұрын

    Это уже в области ООП. По простому, как могу, строка - это объект (класса str). К этому классу можно применить функцию len(text), которая автоматически вызовет магический метод __len__() объекта text и вернет длину строки. Вы во втором случае напрямую его и вызываете. Но это не очень хорошо, т.к. для этого предусмотрена унифицированная функция len(). Напрямую text.len() вызвать для строки не получится, т.к. метода len внутри объекта text (и класса str) нет.

  • @user-ey2qb5dy7k

    @user-ey2qb5dy7k

    Жыл бұрын

    @@selfedu_rus спасибо, вроде въезжаю)

  • @user-tu2nz9dg8k
    @user-tu2nz9dg8k2 жыл бұрын

    6:22 в прошлом уроке нельзя было задавать индекс которого не существует, тут теперь можно?

  • @selfedu_rus

    @selfedu_rus

    2 жыл бұрын

    В методе (в отличие от индексов в []) можно передавать и большие значения. Сам count() отследит, если индекс будет превышать длину строки, то дальше поиск не пойдет.

  • @testingvlad211
    @testingvlad211 Жыл бұрын

    🙏🙏🙏💪🦾 Merci

  • @user-qz4ey5bi5d
    @user-qz4ey5bi5d Жыл бұрын

    А где искать практические занятия?

  • @harlok13

    @harlok13

    Жыл бұрын

    здравствуйте, вроде на степике есть, но я использую codewars, есть еще leet code, но он посложнее будет

  • @rooferspb
    @rooferspb Жыл бұрын

    16:25 как это список без запятых и пробелов, если и пробелы и запятые я вижу?)

  • @selfedu_rus

    @selfedu_rus

    Жыл бұрын

    в полученных строковых фрагментах нет ни пробелов ни запятых

  • @rooferspb

    @rooferspb

    Жыл бұрын

    @@selfedu_rus Довольно сложно так учиться без живого учителя, который бы так объяснял нюансы, но конечно спасибо вам огромное за такой курс, пытаюсь разобраться вот)

  • @gfhitdxaahn
    @gfhitdxaahn Жыл бұрын

    20:07 - 20:15 Таблица

  • @olyarybak3553
    @olyarybak35532 жыл бұрын

    что значит maxsplit=-1 в методе split?

  • @selfedu_rus

    @selfedu_rus

    2 жыл бұрын

    бесконечное число разбиений

  • @olegmakarov7877
    @olegmakarov78772 жыл бұрын

    ... Только не "малые буквы", а "строчные буквы". Так они называются.

  • @the6o6ep71
    @the6o6ep712 жыл бұрын

    а где можна практиковать это?

  • @selfedu_rus

    @selfedu_rus

    2 жыл бұрын

    ссыока под видео

  • @gliese5707
    @gliese57072 жыл бұрын

    То что они работают только в консоле это так и должно быть? или почему эти методы не работают? a = 'upper' a.upper() вывод: не чего Еще пример a = 'upper' a.upper() print(a) вывод: upper

  • @gliese5707

    @gliese5707

    2 жыл бұрын

    Дошло)

  • @user-wt7vp6jg5k
    @user-wt7vp6jg5k Жыл бұрын

    16:24

  • @onedefool6069
    @onedefool60692 жыл бұрын

    5:16. Где же квадратные скобки? Они не нужны?

  • @selfedu_rus

    @selfedu_rus

    2 жыл бұрын

    там функция вызывается, поэтому круглые

  • @Developer_python_
    @Developer_python_ Жыл бұрын

    16: 00 Все можна было сделать одним методом split() без параметров потому что это разное split(' ') и split()

  • @user-xo4zs9gg1r
    @user-xo4zs9gg1r2 жыл бұрын

    9:08 за что так жестоко?(

  • @waltage
    @waltage Жыл бұрын

    14:59 не работает exit result 0

  • @user-dk3lo2jn8f
    @user-dk3lo2jn8f Жыл бұрын

    можно спросить где подробно узнать про true или false везде говорят булево значение. может я один тупой но я этого не догоняю. Я мате стику не знаю от слова совсем. Помню толь ко до 3 класса 5#класс как пошли все эти синусы в 2002 нихрена не воткнул.

  • @selfedu_rus

    @selfedu_rus

    Жыл бұрын

    вопрос в телеграм-канал (ссылка под видео), там вам на пальцах все разьяснят!

  • @kun_6-23
    @kun_6-23 Жыл бұрын

    Иногда у меня команда считает первый индекс включительно иногда не включительно

  • @mrpjetrov378
    @mrpjetrov378 Жыл бұрын

    С ужасом представляю что будет в заданиях

  • @onedefool6069
    @onedefool60692 жыл бұрын

    "Возвращает"... Что же это такое?.. 🤔

  • @farisafari1
    @farisafari17 ай бұрын

    Сейчас есть возможность делать аудио и видео под любого желаемого,нужного человека. Так что не обольщайтесь.И команда есть думаю, думаю человек 12 с половиной. Но всё равно молодцы!

  • @selfedu_rus

    @selfedu_rus

    7 ай бұрын

    один человек - вся команда )

  • @ataman7046
    @ataman70468 ай бұрын

    ничего не понял(((

  • @user-tk4go6go2x
    @user-tk4go6go2x5 ай бұрын

    Интересно почему id при применении разных методов одинаковые... s = "что-то" print(s) print(id(s)) s.upper() print(s.upper()) print(id(s.upper())) s.lower() print(s.lower()) print(id(s.lower())) в консоли: что-то 2920324846640 ЧТО-ТО 2920326571760 что-то 2920326571760

Келесі