Содержание[Скрывать][Показывать]
Добро пожаловать на третью лекцию ускоренного курса.
В этой лекции мы научимся работать со строками в Python. Приготовьте попкорн и сядьте поудобнее.
Струны
Во-первых, давайте поговорим о кавычках и устраним путаницу, которую они могут внести в Python.
Как указывалось ранее, мы можем использовать как одинарные, так и двойные кавычки после функции в Python. В этом есть особая полезность. Предположим, вы хотите напечатать что-то вроде этого.
print('This is Shahbaz's computer')
Теперь в приведенном выше выражении все, что следует за второй кавычкой, как в «Shahbaz's», не будет идентифицировано интерпретатором Python, потому что Python примет вторую кавычку за конец строки. В этом случае вы хотите использовать двойные кавычки для объявления строки следующим образом:
print("This is Shahbaz's computer")
Это также можно применить и наоборот, и мы можем использовать одинарные кавычки, если внутри строки есть двойные кавычки. например
print('This "computer" belongs to Shahbaz')
Теперь, если вы хотите напечатать строку, которая занимает несколько строк, вам придется использовать тройные кавычки, чтобы заключить строку. Эти кавычки также могут быть одинарными или двойными в зависимости от содержимого строки. Например:
Теперь предположим, что вы хотите напечатать определенный символ из строки. Как бы Вы это сделали?
Интерпретатор Python индексирует символы в строке следующим образом:
Как вы можете видеть в терминале, напечатано только «h». Это потому, что мы выбрали только третий символ в нашей строке для печати на терминале, написав 3 в квадратных скобках после переменной. Интерпретатор Python также индексирует отрицательные символы для упрощения больших строк. Это означает, что «-1» будет последним числом в строке и так далее. Обратите внимание, что пробелы не индексируются, что означает, что в приведенной выше строке будет только 21 индексированный пробел.
Вы также можете выбрать серию символов из строки. например
HashDork = ('Python Course by Shahbaz')
print(HashDork[0:3])
Эта программа напечатает «Pyt» на терминале. Индекс 3 исключен из этого списка.
HashDork = ('Python Course by Shahbaz')
print(HashDork[2:])
Точно так же, если мы не укажем конечный индекс, python напечатает всю строку после первого индекса. Результатом этой программы станет «Тон Курс Шахбаза». Это верно и наоборот. т.е. если мы пропустим первый индекс, то будет напечатана вся строка от начала до последнего определенного индекса.
Программа, содержащая только двоеточие в квадратных скобках, выведет на терминал полную строку.
Excercise
Вот интересное упражнение
напишите программу, определяющую интервал индекса [1:-1]. Как вы думаете, что будет на выходе. Попробуй сам.
Форматированные строки
Форматированные строки особенно полезны в ситуациях, когда вы динамически генерируете некоторый текст с вашими переменными. Позволь мне показать тебе.
Допустим, у нас есть две переменные, имя и фамилия.
first_name = 'Shahbaz'
last_name = 'Bhatti'
Теперь мы хотим напечатать на терминале «Шахбаз [Бхатти] кодер». Как бы мы это сделали? Мы введем третью переменную следующим образом:
message = 'first_name + ' [' + last_name + '] is a coder'
Теперь, если мы напечатаем и запустим эту программу, мы получим на терминале «Шахбаз [Бхатти] кодер».
Хотя этот подход отлично работает, он не идеален, потому что по мере того, как наш текст становится более сложным, становится все труднее визуализировать вывод. Здесь мы используем форматированные строки, они облегчают нам визуализацию вывода.
Давайте изменим третью переменную message и введем форматированную строку. Чтобы определить форматированные строки, добавьте к ним префикс 'f', а затем используйте фигурные скобки для динамической вставки значений в ваши строки. Наша программа будет выглядеть примерно так:
first_name = 'Shahbaz'
last_name = 'Bhatti'
message = f'{first_name} [{last_name}] is a coder'
Чтобы определить форматированные строки, добавьте к ним префикс F, а затем используйте фигурные скобки для динамической вставки значений в ваши строки.
Классные вещи, которые можно делать со строками Python
Я собираюсь показать вам некоторые действительно крутые вещи, которые вы можете делать со строками Python.
1. Количество символов в строке
Итак, начнем с определения переменной:
message = 'Shahbaz Bhatti is a Coder '
Теперь, если я хочу определить количество символов в приведенной выше строке, в Python есть встроенная функция «len». Просто напечатайте переменную с помощью этой функции, как это
print(len(message))
Это особенно полезно, когда вы получаете ввод от пользователя. Например, вы заметили, что при заполнении онлайн-форм каждое поле ввода часто имеет ограничение. Например, у вас может быть 50 символов для вашего имени, поэтому с помощью этой функции «len» мы можем установить ограничение на количество символов в поле ввода.
2. Преобразование символов строки в верхний или нижний регистр
Мы можем получить доступ к функциям, связанным со строками, через оператор точки. Вы можете ввести имя своей переменной и, поставив перед ним точку, увидеть список всех таких функций.
Теперь, говоря более точно, вы называете эти функции методами. Это термин в объектно-ориентированном программировании, который мы хотим рассмотреть в будущем, но сейчас я хочу, чтобы вы усвоили, что когда функция принадлежит чему-то другому или относится к какому-то объекту, мы называем эту функцию методом. В этом случае мы будем использовать метод «upper» для преобразования строки в верхний регистр.
Поскольку эта функция специфична для строки, мы называем ее методом. Напротив, «len» и «print» — это функции общего назначения, они не относятся к строкам, числам или другим типам объектов. Это основное различие между функцией и методом.
Теперь давайте напечатаем это.
message = 'Shahbaz Bhatti is a coder'
print(message.upper())
И мы видим, что мы получили нашу строку в верхнем регистре. Точно так же у нас есть метод «lower» для преобразования строки в нижний регистр. Вы также можете использовать метод title, чтобы сделать каждое слово строки заглавной.
Обратите внимание, что метод не изменяет и не модифицирует нашу исходную строку. Фактически он создает новую строку и возвращает ее.
3. Найдите последовательность символов в строке
Давайте попробуем другой метод, чтобы найти индекс определенного символа в строке.
Тип:
message.find('b')
после той же переменной и напечатать ее. Он напечатает индекс первого вхождения буквы «b» в строку, которая в данном случае равна 4.
Обратите внимание, что этот метод чувствителен к регистру и возвращает -1, если символ не найден в строке. Его также можно использовать для последовательности символов.
Например, следующая программа:
message = 'Shahbaz Bhatti is a coder'
print(message.find('coder'))
вернет значение «20», так как последовательность «кодер» начинается с индекса 20.
4. Замена символа в строке
Вы можете использовать метод «заменить», чтобы заменить символ или последовательность символов в строке. Давайте посмотрим на это в действии.
message = 'Shahbaz Bhatti is a coder'
print(message.replace('coder', 'programmer'))
Эта программа заменит слово «кодер» на «программатор» и напечатает это на терминале.
5. Проверить наличие символа в строке
Теперь есть случаи, когда вы хотите проверить наличие символа или последовательности символов в вашей строке. В таких ситуациях вы можете использовать формат выражения следующим образом:
message = 'Shahbaz Bhatti is a coder'
print('python' в сообщении)
Теперь это вернет логическую функцию. т.е. «Верно» или «Ложно». Как это;
Обратите внимание, что все эти методы и функции чувствительны к регистру.
Заворачивать!
Струны — это гораздо больше, чему мы будем учиться постепенно по мере продвижения вперед. Далее мы научимся выполнять арифметические операции в Python.
Оставьте комментарий