
Python. Символьные строки. Срезы.
Presentation
•
Computers
•
10th Grade
•
Medium
Юрий Романов
Used 10+ times
FREE Resource
12 Slides • 24 Questions
1
Строки
Строка считывается со стандартного ввода
функцией input(). Напомним, что для двух строк
определена операция сложения (конкатенации),
также определена операция умножения строки
на число.
Строка состоит из последовательности символов.
Узнать количество символов (длину строки)
можно при помощи функции len:
>>> S = 'Привет!'
>>> print(len(S))
7
2
Срезы
Срез (slice) — извлечение из данной строки одного
символа или некоторого фрагмента подстроки или
подпоследовательности.
Есть три формы срезов. Самая простая форма среза:
взятие одного символа строки, а именно, S[i] — это
срез, состоящий из одного символа, который имеет
номер i, при этом считая, что нумерация начинается с
числа 0. То есть если S='Hello',
то S[0]=='H', S[1]=='e', S[2]=='l', S[3]=='l', S[4]=='o'.
Номера символов в строке (а также в других
структурах данных: списках, кортежах)
называются индексом.
3
Срезы
Если указать отрицательное значение индекса, то номер
будет отсчитываться с конца, начиная с номера -1. То есть S[-
1]=='o', S[-2]=='l', S[-3]=='l',S[-4]=='e', S[-5]=='H'.
Срез с двумя параметрами: S[a:b] возвращает подстроку из b-
a символов, начиная с символа c индексом a, то есть до
символа с индексом b, не включая его. Например,
S[1:4]=='ell', то же самое получится если написать S[-4:-1].
Можно использовать как положительные, так и
отрицательные индексы в одном срезе, например, S[1:-1] —
это строка без первого и последнего символа.
Строка S
H
e
l
l
O
Индекс
S[0]
S[1]
S[2]
S[3]
S[4]
Индекс
S[-5]
S[-4]
S[-3]
S[-2]
S[-1]
4
Срезы
При использовании такой формы среза ошибки IndexError никогда
не возникает. Например, срез S[1:5] вернет строку 'ello', таким же
будет результат, если сделать второй индекс очень большим,
например, S[1:100] (если в строке не более 100 символов).
Если опустить второй параметр (но поставить двоеточие), то срез
берется до конца строки. Например, чтобы удалить из строки
первый символ, то можно взять срез S[1:], аналогично если
опустить первый параметр, то срез берется от начала строки. То
есть удалить из строки последний символ можно при помощи
среза S[:-1]. Срез S[:] совпадает с самой строкой S.
Если задать срез с тремя параметрами S[a:b:d], то третий параметр
задает шаг, как в случае с функцией range, то есть будут взяты
символы с индексами a, a+d, a+2*d и т.д. При задании значения
третьего параметра, равному 2, в срез попадет каждый второй
символ, а если взять значение среза, равное -1, то символы будут
идти в обратном порядке.
5
Методы строк
Функция или метод
Назначение
S1 + S2
Конкатенация (сложение строк)
S1 * 3
Повторение строки
S[i]
Обращение по индексу
S[i:j:step]
Извлечение среза
len(S)
Длина строки
str in S
Проверка на вхождение подстроки в
строку
S.find(str, [start],[end])
Поиск подстроки в строке.
Возвращает номер первого
вхождения или -1
S.rfind(str, [start],[end])
Поиск подстроки в строке.
Возвращает номер последнего
вхождения или -1
S.replace(шаблон, замена)
Замена
6
Методы строк
S.split(символ)
Разбиение по разделителю
S.isdigit()
Состоит ли строка из цифр
S.isalpha()
Состоит ли строка из букв
S.isalnum()
Состоит ли строка из цифр или букв
S.islower()
Состоит ли строка из символов в
нижнем регистре
S.isupper()
Состоит ли строка из символов в
верхнем регистре
S.istitle()
Начинаются ли слова в строке с
заглавной буквы
S.upper()
Преобразование строки к верхнему
регистру
S.lower()
Преобразование строки к нижнему
регистру
S.startswith(str)
Проверка начала строки
7
Методы строк
S.endswith(str)
Проверка окончания строки
S.join(список)
Сборка строки из строкового
списка с разделителем S
ord(символ)
Символ в его код ASCII
chr(число)
Код ASCII в символ
S.capitalize()
Переводит первый символ
строки в верхний регистр, а все
остальные - в нижний
S.count(str, [start],[end])
Возвращает количество
вхождений подстроки в
диапазоне [начало, конец]
8
Методы строк
S.lstrip([chars])
Удаление пробельных
символов в начале
строки
S.rstrip([chars])
Удаление пробельных
символов в конце
строки
S.strip([chars])
Удаление пробельных
символов в начале и в
конце строки
9
Методы строк
S.swapcase()
Переводит символы
нижнего регистра в
верхний, а верхнего – в
нижний
S.title()
Первую букву каждого слова
переводит в верхний
регистр, а все остальные - в
нижний
S.zfill(width)
Делает длину строки не
меньшей width, по
необходимости заполняя
первые символы нулями
10
Методы строк
S.ljust(width, fillchar=" ")
Делает длину строки не
меньшей width, по
необходимости заполняя
последние символы
символом fillchar
S.rjust(width, fillchar=" ")
Делает длину строки не
меньшей width, по
необходимости заполняя
первые символы символом
fillchar
S.format(*args, **kwargs)
Форматирование строки
11
Примеры задач на обработку строк:
Пример 1
Дана непустая строка S. Вывести строку, содержащую
символы строки S, между которыми вставлено по одному
пробелу.
Решение 1
s=input()
p=''
for i in range(len(s)):
p=p+s[i:i+1]+' '
print(p)
Решение 2
s = list(input())
print(' '.join(s))
12
Примеры задач на обработку строк:
Пример 2
Дана строка, состоящая из русских слов, набранных
заглавными буквами и разделенных пробелами (одним
или несколькими). Найти количество слов, которые
начинаются и заканчиваются одной и той же буквой.
s = list(input().split())
k=0
for slovo in s:
if slovo[0]==slovo[-1]:
k+=1
print(k)
13
Multiple Select
1. В программе используется символьная строка s:
s = "Привет от старых штиблет!"
Отметьте все правильные операторы, работающие с этой символьной строкой.
s = "12345"
"12345" = s
s[1] = "0"
s1 = s[:]
s[:] = s1
14
Multiple Select
Строка - это
массив символов
упорядоченная последовательность символов
последовательность одинаковых символов
одномерный массив
15
Fill in the Blanks
Type answer...
16
Multiple Select
Какие свойства относятся к спискам?
Хранит в себе несколько элементов
Является неизменяемым типом данных
Является упорядоченным типом данных
Элементы списка не могут дублироваться
17
Fill in the Blanks
Type answer...
18
Fill in the Blanks
Type answer...
19
Multiple Choice
Какое значение выдаст данный фрагмент кода?
3
4
Index Error
2
20
Fill in the Blanks
Type answer...
21
Fill in the Blanks
Type answer...
22
Multiple Choice
Какой метод используется для удаления элементов в списке?
del
extend()
append()
pos()
23
Fill in the Blanks
Type answer...
24
Multiple Choice
Можно ли при помощи срезов изменять список?
Да
Нет
25
Multiple Choice
Что выдаст данный фрагмент кода?
[3, 4, 5]
[3, 2, 1]
[4, 3, 2, 1]
[5, 4, 3, 2, 1]
26
Fill in the Blanks
Type answer...
27
Multiple Select
Перечислите свойства строк
Элементы индексируется
Изменяемая тип данных
Неизменяемая тип данных
Содержит пару: ключ-значение
28
Multiple Choice
С помощью какого знака производится конкатенация строк?
*
+
-
^
29
Fill in the Blanks
Type answer...
30
Multiple Choice
С помощью чего можно проводить перебор индексов либо элементов списка и строк?
while
if...else
for
switch...case
31
Fill in the Blanks
Type answer...
32
Fill in the Blanks
Type answer...
33
Fill in the Blanks
Type answer...
34
Fill in the Blanks
Type answer...
35
Fill in the Blanks
Type answer...
36
Fill in the Blanks
Type answer...
Строки
Строка считывается со стандартного ввода
функцией input(). Напомним, что для двух строк
определена операция сложения (конкатенации),
также определена операция умножения строки
на число.
Строка состоит из последовательности символов.
Узнать количество символов (длину строки)
можно при помощи функции len:
>>> S = 'Привет!'
>>> print(len(S))
7
Show answer
Auto Play
Slide 1 / 36
SLIDE
Similar Resources on Wayground
33 questions
Direct, Inverse and Joint Variation
Presentation
•
10th Grade
29 questions
Asesmen Diagnostik (Non Kognitif)
Presentation
•
10th Grade
25 questions
Network Security
Presentation
•
10th Grade
27 questions
World War 1
Presentation
•
10th Grade
27 questions
sistem komputer 10
Presentation
•
10th Grade
27 questions
Theory of Evolution: Natural Selection
Presentation
•
10th Grade
30 questions
Fragments, Comma Splices, and Fused Sentences
Presentation
•
10th Grade
30 questions
ЦИФРОВОЙ ЭТИКЕТ
Presentation
•
KG
Popular Resources on Wayground
20 questions
"What is the question asking??" Grades 3-5
Quiz
•
1st - 5th Grade
20 questions
“What is the question asking??” Grades 6-8
Quiz
•
6th - 8th Grade
10 questions
Fire Safety Quiz
Quiz
•
12th Grade
20 questions
Equivalent Fractions
Quiz
•
3rd Grade
34 questions
STAAR Review 6th - 8th grade Reading Part 1
Quiz
•
6th - 8th Grade
20 questions
“What is the question asking??” English I-II
Quiz
•
9th - 12th Grade
20 questions
Main Idea and Details
Quiz
•
5th Grade
47 questions
8th Grade Reading STAAR Ultimate Review!
Quiz
•
8th Grade
Discover more resources for Computers
20 questions
“What is the question asking??” English I-II
Quiz
•
9th - 12th Grade
10 questions
Fire Prevention
Quiz
•
9th - 12th Grade
50 questions
STAAR English 2 Review
Quiz
•
10th Grade
20 questions
Figurative Language Review
Quiz
•
10th Grade
20 questions
Grammar
Quiz
•
9th - 12th Grade
16 questions
AP Biology: Unit 1 Review (CED)
Quiz
•
9th - 12th Grade
20 questions
verbos reflexivos en español
Quiz
•
9th - 12th Grade
11 questions
Expectations Review
Quiz
•
9th - 12th Grade