Программирование на языке Python

Содержание

Слайд 2

Программирование на языке Python § 66. Символьные строки

Программирование на языке Python

§ 66. Символьные строки

Слайд 3

Символьные строки Начальное значение: Вывод на экран: print ( s )

Символьные строки

Начальное значение:

Вывод на экран:

print ( s )

s = "Привет!"

Длина строки:

n

= len ( s )

print ( s[5] )

print ( s[-2] )

s[len(s)-2]

Слайд 4

Символьные строки Ввод с клавиатуры: s = input ( "Введите имя:

Символьные строки

Ввод с клавиатуры:

s = input ( "Введите имя: " )

Изменение

строки:

s[4] = "a"

... но можно составить новую строку:

s1 = s + "a"

Слайд 5

Символьные строки s = input( "Введите строку:" ) s1 = ""

Символьные строки

s = input( "Введите строку:" )
s1 = "" # строка-результат
for

c in s:
if c == "а":
c = "б"
s1 = s1 + c
print ( s1 )

Задача: заменить в строке все буквы "а" на буквы "б".

перебрать все символы в строке

добавить символ к строке-результату

Слайд 6

Задачи «A»: Ввести с клавиатуры символьную строку и заменить в ней

Задачи

«A»: Ввести с клавиатуры символьную строку и заменить в ней все

буквы «а» на «б» и все буквы «б» на «а» (заглавные на заглавные, строчные на строчные).
Пример:
Введите строку:
ааббААББссСС
Результат:
ббааББААссСС
Слайд 7

Задачи «B»: Ввести с клавиатуры символьную строку и определить, сколько в

Задачи

«B»: Ввести с клавиатуры символьную строку и определить, сколько в ней

слов. Словом считается последовательности непробельных символов, отделенная с двух сторон пробелами (или стоящая с краю строки). Слова могут быть разделены несколькими пробелами, в начале и в конце строки тоже могут быть пробелы.
Пример:
Введите строку:
Вася пошел гулять
Найдено слов: 3
Слайд 8

Задачи «C»: Ввести с клавиатуры символьную строку и найдите самое длинное

Задачи

«C»: Ввести с клавиатуры символьную строку и найдите самое длинное слово

и его длину. Словом считается последовательности непробельных символов, отделенная с двух сторон пробелами (или стоящая с краю строки). Слова могут быть разделены несколькими пробелами, в начале и в конце строки тоже могут быть пробелы.
Пример:
Введите строку:
Вася пошел гулять
Самое длинное слово: гулять, длина 6
Слайд 9

Операции со строками Объединение (конкатенация) : s1 = "Привет" s2 =

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

Объединение (конкатенация) :

s1 = "Привет"
s2 = "Вася"
s

= s1 + ", " + s2 + "!"

"Привет, Вася!"

Срезы:

s = "0123456789"
s1 = s[3:8] # "34567"

разрезы

Слайд 10

Операции со строками Срезы: s = "0123456789" s1 = s[:8] #

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

Срезы:

s = "0123456789"
s1 = s[:8] # "01234567"

от начала

строки

s = "0123456789"
s1 = s[3:] # "3456789"

до конца строки

s1 = s[::-1] # "9876543210"

реверс строки

Слайд 11

Операции со строками Срезы с отрицательными индексами: s = "0123456789" s1

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

Срезы с отрицательными индексами:

s = "0123456789"
s1 = s[:-2] #

"01234567"

N-2

s = "0123456789"
s1 = s[-6:-2] # "4567"

N-2

N-6

Слайд 12

Операции со строками Вставка: s = "0123456789" s1 = s[:3] +

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

Вставка:

s = "0123456789"
s1 = s[:3] + "ABC" + s[3:]

Удаление:

s

= "0123456789"
s1 = s[:3] + s[9:] # "0129"

"012"

"9"

"012ABC3456789"

Слайд 13

Стандартные функции Верхний/нижний регистр: s = "aAbBcC" s1 = s.upper() #

Стандартные функции

Верхний/нижний регистр:

s = "aAbBcC"
s1 = s.upper() # "AABBCC"
s2 = s.lower()

# "aabbcc"

Проверка на цифры:

s = "abc"
print ( s.isdigit() ) # False
s1 = "123"
print ( s1.isdigit() ) # True

… и много других.

Слайд 14

Поиск в строках s = "Здесь был Вася." n = s.find

Поиск в строках

s = "Здесь был Вася."
n = s.find ( "с"

) # n = 3
if n >= 0:
print ( "Номер символа", n )
else:
print ( "Символ не найден." )

s = "Здесь был Вася."
n = s.rfind ( "с" ) # n = 12

Поиск с конца строки:

Слайд 15

Пример обработки строк Задача: Ввести имя, отчество и фамилию. Преобразовать их

Пример обработки строк

Задача: Ввести имя, отчество и фамилию. Преобразовать их к

формату «фамилия-инициалы».
Пример:
Введите имя, отчество и фамилию:
Василий Алибабаевич Хрюндиков
Результат:
Хрюндиков В.А.

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

Алибабаевич Хрюндиков

Хрюндиков

Хрюндиков В.А.

Слайд 16

Пример обработки строк print ( "Введите имя, отчество и фамилию:" )

Пример обработки строк

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 )
Слайд 17

Пример обработки строк print ( "Введите имя, отчество и фамилию:" )

Пример обработки строк

print ( "Введите имя, отчество и фамилию:" )
s =

input()
fio = s.split()
s = fio[2] + " " + fio[0][0] + "." + fio[1][0] + "."
print ( s )

Решение в стиле Python:

Василий Алибабаевич Хрюндиков

fio[2]

fio[1]

fio[0]

Слайд 18

Задачи «A»: Ввести с клавиатуры в одну строку фамилию, имя и

Задачи

«A»: Ввести с клавиатуры в одну строку фамилию, имя и отчество,

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