Рядок як масив

Відкрита

10.1 Цикл по символах рядка

У Python рядки часто розглядаються як масиви/списки символів, що робить їх особливо зручними для маніпуляцій, аналогічних роботі з масивами в інших мовах програмування.

Ну, а раз рядок – це набір символів, то по них можна пройтись циклом.

Цикл по символах рядка

Для ітерації по кожному символу рядка можна використовувати простий цикл for. Це дозволяє виконувати операції з кожним символом окремо:

text = "Hello"
for char in text:
    print(char)
На екран буде виведено:
H
e
l
l
o

Важливо! У Python немає типу char для окремого символа. Один символ рядка — це все одно рядок.

10.2 Визначення довжини рядка

Що ще можна зробити з рядком? Звичайно ж визначити його довжину – дізнатися скільки в ньому символів. Для цього у Python є спеціальна вбудована функція len(). Ця функція повертає кількість символів у рядку:

text = "Hello, world!"
length = len(text)
print(length)  # Виведе: 13

10.3 Отримання конкретного символа

Також ви можете отримати конкретний символ рядка за його номером. Точніше, за його індексом.

Важливо! Індекси списків та масивів у Python починаються з 0. Якщо в рядку 10 символів, то вони матимуть індекси: 0, 1, 2, ...9.

Загальний вигляд отримання символу за індексом виглядає так:

string[index]

Давайте виведемо на екран усі символи рядка, але звернемося до них за їхніми індексами:

text = "Hello"
for i in range(len(text)):
    print(text[i])
На екран буде виведено:
H
e
l
l
o

10.4 Входження підрядка

Перевірка входження одного рядка в інший — одна з базових задач, яку часто потрібно вирішувати під час програмування на Python. Ця можливість широко використовується у багатьох додатках, включаючи обробку текстових даних, валідацію вводу користувача та пошук даних у рядках.

Для цієї задачі у Python є кілька способів, як унікальні особисто для нього, так і поширені в інших мовах програмування:

Оператор in:

Це найпростіший і часто використовуваний метод для перевірки наявності підрядка у рядку. Він повертає True, якщо підрядок присутній у рядку, і False в іншому випадку.

text = "Hello, world!"
print("world" in text)  # Виведе: True

Метод find():

Метод find() повертає індекс першого входження підрядка в рядок, якщо підрядок знайдено, і -1, якщо підрядок відсутній. Це дозволяє не тільки перевірити наявність підрядка, але й дізнатися його положення.

text = "Hello, world!"
position = text.find("world")
print(position)  # Виведе: 7

Метод index():

Схожий на find(), але замість повернення -1 при відсутності підрядка, метод index() генерує виключення ValueError. Цей метод корисний, коли відсутність підрядка є неочікуваною і має призвести до помилки.

text = "Hello, world!"
try:
    position = text.index("world")
    print(position)  # Виведе: 7
except ValueError:
    print("Substring not found.")

Метод count():

Метод count() підраховує, скільки разів підрядок зустрічається в рядку. Це корисно, коли потрібно знати не тільки факт входження, але й кількість входжень.

text = "Hello, world!"
cnt = text.count("l")
print(cnt)  # Виведе: 3
2
Задача
Модуль 1: Python Core,  6 рівень,  9 лекція
Недоступна
Пошук підрядка.
Пошук підрядка.
2
Задача
Модуль 1: Python Core,  6 рівень,  9 лекція
Недоступна
Символи в рядку
Символи в рядку
Коментарі (2)
  • популярні
  • нові
  • старі
Щоб залишити коментар, потрібно ввійти в систему
negoda @poviranacze - Telegram в Python Intern (Train
19 липня 2025, 10:38
Решение первой задачи :
string = input()
string_sub = input()

print(string_sub in string)
print(string.find(string_sub))
print(string.count(string_sub))
# Или объединяем в один print() (минус читабельность) : print(string_sub in string, string.find(string_sub), string.count(string_sub))
Решение второй задачи :
string = input()
print(len(string))

index = int(input())

if index >= len(string):
    print("Out of range")
else:
    print(string[index])
Gena
Рівень 45
31 березня, 08:50
Ви забули, що в Python є можливість використовувати від'ємні значення індексів, то ж треба додати перевірку і на це