1.46M
Категория: ПрограммированиеПрограммирование

Методы строк. Алгоритмы обработки символьных строк: разбиение строки на слова по пробельным символам

1.

Методы строк. Алгоритмы
обработки символьных
строк: разбиение строки
на слова по пробельным
символам

2.

Повторение материала

3.

Методы и функции

4.

Методы и функции
4
Мы уже знакомы с некоторыми встроенными функциями:
min(), max(), len(), int(), float() и т.д.
Метод — это специализированная функция, тесно связанная с
объектом. Как и функция, метод вызывается для выполнения
отдельной задачи, но он вызывается для определенного объекта и
знает о своем целевом объекте во время выполнения.
Метод вызывается в виде имя_объекта.имя_метода(параметры).

5.

Методы и функции
5
s = input()
s.find ("*")
s.split ("+")
Метод find(<sub>) (от англ. find – найти) находит индекс
первого вхождения подстроки <sub> в исходную строку s. Если
строка s не содержит подстроки <sub>, то метод возвращает
значение -1.
Метод split(<sub>)(от англ. split – расщепить) возвращает
список слов, полученных при разбиении строки.

6.

Пример обработки строк с помощью
методов поиска и разбиения

7.

Задача. Ввести имя, отчество и фамилию.
Преобразовать их к формату «фамилияинициалы»
Ввод данных:
Введите имя, отчество и фамилию:
Иван Петрович Семёнов
Вывод:
Семёнов И.П.
7

8.

Алгоритм
найти первый пробел и выделить имя
удалить имя с пробелом из основной строки
найти первый пробел и выделить отчество
удалить отчество с пробелом из основной
строки
«сцепить» фамилию, первые буквы имени и
фамилии, точки, пробелы…
8

9.

Пример программы:
print ( "Введите имя, отчество и фамилию:" )
s = input()
n = s.find ( " " )
name = s[:n]
s = s[n+1:]
n = s.find ( " " )
name2 = s[:n]
s = s[n+1:]
s = s + " " + name[0 ] + "." + name2[0] + ". "
print(s)
Метод find(<sub>) находит индекс первого вхождения
подстроки <sub> в исходную строку s. Если строка s не
содержит подстроки <sub>, то метод возвращает значение -1.
9

10.

Решение в стиле Python
print ( "Введите имя, отчество и фамилию:" )
s = input()
fio = s.split()
s = fio[2] + " " + fio[0][0] + "." + fio[1][0] + "."
print(s)
Иван
Петрович
Семёнов
fio[0] fio[1]
fio[2]
Метод split(<sub>)(от англ. split – расщепить) возвращает
список слов, полученных при разбиении строки.
10

11.

Самостоятельно:
1) Ввести с клавиатуры в одну строку фамилию,
имя и отчество, разделив их пробелом. Вывести
фамилию и инициалы.
Пример:
Введите фамилию, имя и отчество:
Иванов Петр Семёнович
П. С. Иванов
11

12.

Самостоятельно:
2) Ввести адрес файла и «разобрать» его на части,
разделенные знаком "/". Каждую часть вывести в
отдельной строке.
Пример:
Введите адрес файла:
C:/Фото/2013/Поход/vasya.jpg
C:
Фото
2013
Поход
vasya.jpg
12

13.

Самостоятельно:
3) Ввести с клавиатуры дату в формате: 12 мая 2024.
Программа должна вывести эту дату в другом
формате: 12.05.2024
13
English     Русский Правила