Search Header Logo
Python. Символьные строки. Срезы.

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

Assessment

Presentation

Computers

10th Grade

Medium

Created by

Юрий Романов

Used 10+ times

FREE Resource

12 Slides • 24 Questions

1

media

Строки

Строка считывается со стандартного ввода
функцией input(). Напомним, что для двух строк
определена операция сложения (конкатенации),
также определена операция умножения строки
на число.
Строка состоит из последовательности символов.
Узнать количество символов (длину строки)
можно при помощи функции len:
>>> S = 'Привет!'
>>> print(len(S))
7

2

media

Срезы

Срез (slice) — извлечение из данной строки одного
символа или некоторого фрагмента подстроки или
подпоследовательности.
Есть три формы срезов. Самая простая форма среза:
взятие одного символа строки, а именно, S[i] — это
срез, состоящий из одного символа, который имеет
номер i, при этом считая, что нумерация начинается с
числа 0. То есть если S='Hello',
то S[0]=='H', S[1]=='e', S[2]=='l', S[3]=='l', S[4]=='o'.
Номера символов в строке (а также в других
структурах данных: списках, кортежах)
называются индексом.

3

media

Срезы

Если указать отрицательное значение индекса, то номер
будет отсчитываться с конца, начиная с номера -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

media

Срезы

При использовании такой формы среза ошибки 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

media

Методы строк

Функция или метод

Назначение

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

media

Методы строк

S.split(символ)

Разбиение по разделителю

S.isdigit()

Состоит ли строка из цифр

S.isalpha()

Состоит ли строка из букв

S.isalnum()

Состоит ли строка из цифр или букв

S.islower()
Состоит ли строка из символов в
нижнем регистре

S.isupper()
Состоит ли строка из символов в
верхнем регистре

S.istitle()
Начинаются ли слова в строке с
заглавной буквы

S.upper()
Преобразование строки к верхнему
регистру

S.lower()
Преобразование строки к нижнему
регистру

S.startswith(str)

Проверка начала строки

7

media

Методы строк

S.endswith(str)

Проверка окончания строки

S.join(список)
Сборка строки из строкового
списка с разделителем S

ord(символ)

Символ в его код ASCII

chr(число)

Код ASCII в символ

S.capitalize()

Переводит первый символ
строки в верхний регистр, а все
остальные - в нижний

S.count(str, [start],[end])

Возвращает количество
вхождений подстроки в
диапазоне [начало, конец]

8

media

Методы строк

S.lstrip([chars])

Удаление пробельных
символов в начале
строки

S.rstrip([chars])

Удаление пробельных
символов в конце
строки

S.strip([chars])

Удаление пробельных
символов в начале и в
конце строки

9

media

Методы строк

S.swapcase()

Переводит символы
нижнего регистра в
верхний, а верхнего – в
нижний

S.title()

Первую букву каждого слова
переводит в верхний
регистр, а все остальные - в
нижний

S.zfill(width)

Делает длину строки не
меньшей width, по
необходимости заполняя
первые символы нулями

10

media

Методы строк

S.ljust(width, fillchar=" ")

Делает длину строки не
меньшей width, по
необходимости заполняя
последние символы
символом fillchar

S.rjust(width, fillchar=" ")

Делает длину строки не
меньшей width, по
необходимости заполняя
первые символы символом
fillchar

S.format(*args, **kwargs)

Форматирование строки

11

media

Примеры задач на обработку строк:
Пример 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

media

Примеры задач на обработку строк:

Пример 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 = "Привет от старых штиблет!"


Отметьте все правильные операторы, работающие с этой символьной строкой.

1

s = "12345"

2

"12345" = s

3

s[1] = "0"

4

s1 = s[:]

5

s[:] = s1

14

Multiple Select

Строка - это

1

массив символов

2

упорядоченная последовательность символов

3

последовательность одинаковых символов

4

одномерный массив

15

Fill in the Blank

В программе предусмотрен список a. Что будет выведено на экран после выполнения следующей операции?

а = ['b', 'c', 'd', 'e', 'f', 'g']

распечатать (а[-2])

16

Multiple Select

Какие свойства относятся к спискам?

1

Хранит в себе несколько элементов

2

Является неизменяемым типом данных

3

Является упорядоченным типом данных

4

Элементы списка не могут дублироваться

17

Fill in the Blank

2. Что будет выведено на экран после выполнения программы?


s = "123"

s = s + "0" + s;

s = s + s;

print ( s )

18

Fill in the Blank

Как создаётся пустой список?

19

Multiple Choice

Question image

Какое значение выдаст данный фрагмент кода?

1

3

2

4

3

Index Error

4

2

20

Fill in the Blank

3. Что будет выведено на экран после выполнения этой программы?

s = "123"

s = s + s[1] + s + s[2]

print ( s )

21

Fill in the Blank

Какая функция позволяет узнать длину списка (кол-во элементов)?

22

Multiple Choice

Какой метод используется для удаления элементов в списке?

1

del

2

extend()

3

append()

4

pos()

23

Fill in the Blank

Что будет выведено на экран после выполнения этой программы?


s = "12345"

n = len(s) + len("456")

print ( n )

24

Multiple Choice

Можно ли при помощи срезов изменять список?

1

Да

2

Нет

25

Multiple Choice

Question image

Что выдаст данный фрагмент кода?

1

[3, 4, 5]

2

[3, 2, 1]

3

[4, 3, 2, 1]

4

[5, 4, 3, 2, 1]

26

Fill in the Blank

Что будет выведено на экран после выполнения программы?


s = "123456789"

s1 = "abcdef"

s = s[4:6] + "0" + s1[2:5]

print ( s )

27

Multiple Select

Перечислите свойства строк

1

Элементы индексируется

2

Изменяемая тип данных

3

Неизменяемая тип данных

4

Содержит пару: ключ-значение

28

Multiple Choice

С помощью какого знака производится конкатенация строк?

1

*

2

+

3

-

4

^

29

Fill in the Blank

Что будет выведено на экран после выполнения этой программы?


s = "0123456"

q = "abc"

s = s[:2] + s[5:]

q = q[0] + s + q[1:]

print ( q )

30

Multiple Choice

С помощью чего можно проводить перебор индексов либо элементов списка и строк?

1

while

2

if...else

3

for

4

switch...case

31

Fill in the Blank

Что будет выведено на экран после окончания работы программы?


s = "0123456789"

q = s[2:]

n = q.find("6")

print ( n )

32

Fill in the Blank

Что будет выведено на экран после выполнения этой программы?


s = "0123456789"

n = s.find("456")

q = s[:n+2] + s[n+5:]

print ( q )

33

Fill in the Blank

Question image

Сколько единиц будет выведено на экран?


34

Fill in the Blank

Question image

Программа должна считать, сколько раз в строке S встречается подстрока "12". Какой оператор надо вставить вместо многоточия? Вводите ответ без пробелов.

35

Fill in the Blank

Question image

Программа должна считать, сколько раз в строке S встречается цифра "0". Какой оператор надо вставить вместо многоточия? Вводите ответ без пробелов.

36

Fill in the Blank

Какой оператор надо вставить вместо многоточия, чтобы в строке S были записаны символы строки Q в обратном порядке? Вводите ответ без пробелов.


Q = "0123456789"

S = "0"

for k in range(1,10):

...

media

Строки

Строка считывается со стандартного ввода
функцией input(). Напомним, что для двух строк
определена операция сложения (конкатенации),
также определена операция умножения строки
на число.
Строка состоит из последовательности символов.
Узнать количество символов (длину строки)
можно при помощи функции len:
>>> S = 'Привет!'
>>> print(len(S))
7

Show answer

Auto Play

Slide 1 / 36

SLIDE