Scroll to Top

← Назад

🔤 Работа со строками в Python

Строки (str) - это последовательности символов. В Python с ними можно делать множество полезных операций.

📝 1. Создание строк

Строки создаются с помощью одинарных '...' или двойных "..." кавычек.

text1 = 'Привет'
text2 = "Мир"
text3 = "Он сказал: 'Привет!'"  # Внутри двойных можно использовать одинарные

🔹 Многострочные строки

Для создания многострочных строк, которые сохраняют форматирование (переносы строк, пробелы и т. п.), используются тройные кавычки """...""" или '''...'''.

poem = """Белеет парус одинокий
В тумане моря голубом"""

print(poem)

🔗 2. Операции со строками

🔹 Сложение (конкатенация)

first = "Hello"
second = "World"
result = first + " " + second
print(result)  # Hello World

🔹 Умножение

line = "=" * 10
print(line)  # ==========

🔹 Длина строки - len()

text = "Python"
print(len(text))  # 6

🔍 3. Индексы и срезы

Каждый символ в строке имеет свой номер (индекс), начиная с 0.

🔹 Доступ по индексу

word = "Python"
print(word[0])   # P
print(word[3])   # h
print(word[-1])  # n (последний символ)
Символ P y t h o n
Индекс 0 1 2 3 4 5
Отриц. -6 -5 -4 -3 -2 -1

🔹 Срезы (slices)

Синтаксис: строка[начало:конец:шаг]

text = "Hello World"

print(text[0:5])   # Hello
print(text[6:])    # World
print(text[:5])    # Hello
print(text[::2])   # HloWrd (каждый второй символ)
print(text[::-1])  # dlroW olleH (разворот строки)

🛠️ 4. Полезные методы строк

🔹 Изменение регистра

Метод Описание Пример
.upper() Все символы в верхний регистр "hello".upper() → "HELLO"
.lower() Все символы в нижний регистр "HELLO".lower() → "hello"
.capitalize() Первая буква заглавная "python".capitalize() → "Python"
.title() Каждое слово с заглавной буквы "hello world".title() → "Hello World"

🔹 Поиск и проверка

Метод Описание Пример
.find(sub) Индекс первого вхождения (или -1) "hello".find("l") → 2
.count(sub) Количество вхождений "hello".count("l") → 2
.startswith(sub) Начинается ли строка с подстроки "hello".startswith("he") → True
.endswith(sub) Заканчивается ли строка подстрокой "hello".endswith("lo") → True

🔹 Замена и разделение

Метод Описание Пример
.replace(old, new) Заменить подстроку "hello".replace("l", "L") → "heLLo"
.split(sep) Разделить строку на список "a,b,c".split(",") → ['a', 'b', 'c']
.strip() Убрать пробелы с краёв " hi ".strip() → "hi"
join() Склеивает список строк ".".join(['a', 'b']) → 'a.b'

🔹 Пример использования

text = "  Python Programming  "

print(text.strip())              # Python Programming
print(text.lower())              # python programming
print(text.replace("Python", "Java"))  #   Java Programming  
print("Python" in text)          # True

🔢 5. Проверка типа символов

Метод Описание
.isdigit() Состоит ли строка только из цифр
.isalpha() Состоит ли строка только из букв
.isalnum() Состоит ли строка из букв и/или цифр
.isspace() Состоит ли строка только из пробелов
print("123".isdigit())      # True
print("abc".isalpha())      # True
print("abc123".isalnum())   # True
print("   ".isspace())      # True

🔄 6. Перебор символов в строке

Строку можно перебрать в цикле for.

for char in "Python":
    print(char)

📌 Вывод:

P
y
t
h
o
n

🧠 7. Форматирование строк (повторение)

🔹 f-строки

name = "Алиса"
age = 20

print(f"Меня зовут {name}, мне {age} лет.")

🔹 Метод .format()

text = "Меня зовут {}, мне {} лет.".format("Алиса", 20)
print(text)



🎓 Задания

🧪 1) Подсчёт гласных

Пользователь вводит строку. Программа должна: - подсчитать количество гласных букв (a, e, i, o, u, а, е, ё, и, о, у, ы, э, ю, я) - вывести результат

Пример ввода

Введите строку: Hello World

Пример вывода

Количество гласных: 3
Решение:
text = input("Введите строку: ")
vowels = "aeiouаеёиоуыэюя"
count = 0

for char in text.lower():
    if char in vowels:
        count += 1

print(f"Количество гласных: {count}")



🧪 2) Палиндром

Пользователь вводит слово. Программа должна проверить, является ли оно палиндромом (читается одинаково слева направо и справа налево).

Пример ввода №1

Введите слово: казак

Пример вывода №1

Это палиндром!

Пример ввода №2

Введите слово: python

Пример вывода №2

Это не палиндром.
Решение:
word = input("Введите слово: ").lower()

if word == word[::-1]:
    print("Это палиндром!")
else:
    print("Это не палиндром.")



🧪 3) Замена пробелов

Пользователь вводит предложение. Программа должна: - заменить все пробелы на символ _ (нижнее подчёркивание) - вывести изменённую строку

Пример ввода

Введите предложение: Hello World from Python

Пример вывода

Hello_World_from_Python
Решение:
text = input("Введите предложение: ")
result = text.replace(" ", "_")
print(result)

Материал для учеников

Этот раздел доступен только ученикам Ника

Чтобы получить доступ, свяжитесь с преподавателем