Символьные данные. Посимвольная обработка строк
Строковая переменная, длина строки, символ и индекс; основные встроенные средства работы со строками. Практика: посимвольно подсчитать частоту заданного символа, затем сопоставить результат со встроенной функцией или методом. Проверить пустую строку, отсутствие символа, повторения и различие регистра.
Конспект урока
Читать строку, определять её длину, безопасно обращаться по индексу и обрабатывать символы по одному; проверять пустую строку, пробел и регистр.
В Python 3 str — неизменяемая последовательность кодовых точек Unicode. В основных задачах строки длиной 0…40 состоят из обычных одиночных латинских/русских букв, десятичных цифр и пробела; составные знаки и эмодзи не рассматриваются. Поэтому считаемые элементы здесь совпадают с привычными символами. len(s) — число элементов; неотрицательные индексы от 0 до len(s)−1. Индекс за границей даёт IndexError. У пустой строки нет первого/последнего элемента. for ch in s перебирает элементы слева направо, для пустой строки тело пропущено. s[i] нельзя присвоить новый символ: новую строку собирают в другой переменной, например t=t+ch. input() читает строку без завершающего перевода строки, сохраняя пробелы; strip не применяем. Ввод пустой строки — нажать Enter. Регистр учитывается: латинские a и A различаются. В A2 удаляем только обычный пробел, не все возможные пробельные символы.
Для работы достаточно бумаги, ручки и памятки. Сохраняй первую попытку; исправления отмечай другим знаком.
Безопасное начало
Сухие руки, без напитков у техники. Провода и разъёмы не трогай, о неисправности сообщи учителю. Работай по правилам кабинета. Две полные минуты в середине урока — без экрана и заданий. Внешний ИИ, аккаунты и личные данные не требуются.
Что уже нужно знать
Python 3: input возвращает строку; присваивание, if, счётчик, for. Урок 29: перебор значений и range. Новые операции со строкой объяснены в памятке.
S0. В чём различие между числом 12 и строкой "12"? Что даёт input() без преобразования int?
Устная проба без отметки.
Строка и последовательный обход
Первый индекс 0, последний len(s)−1. У пустой строки нет элемента с индексом 0. for ch in s перебирает элементы слева направо. Счётчик начинается с 0; новая строка t — с "". t=t+ch добавляет в конец. Проверяй пустой вход, регистр и пробел. Основной алфавит — одиночные буквы, цифры и обычный пробел.
| Операция | Смысл |
|---|---|
| len(s), s[i] | Длина и элемент по индексу |
| for ch in s | Обход по одному элементу |
| t=t+ch | Построение новой строки |
0…40 элементов. input сохраняет пробелы, Enter даёт пустую строку. Латинская a отличается от A и кириллической а. Индекс проверять до обращения. Памятка разрешена.
Концептуальная иллюстрация. Точные данные определены условиями, таблицами и схемами; предметы на рисунке не являются входными данными.
Личная проба
C1. Python 3: s="код". Найди len(s), s[0], s[2]. Есть ли допустимый индекс 3?
Одна минута лично, затем две на разбор. Памятка разрешена.
Длина и индекс на другой строке
Модель s="луна": длина 4, индексы 0,1,2,3; s[1] — у. Если считать букву н, счётчик по шагам 0,0,1,1. В A1 другая буква и другие входы.
A1. Код ниже считает латинскую строчную a. Предскажи вывод для banana, отдельно sky и пустой строки. Один случай запусти, остальные проверь вручную.
s = input()
k = 0
for ch in s:
if ch == "a":
k = k + 1
print(k)
Заготовка для своей записи:
| Буквы banana по порядку | Счётчик после букв |
|---|---|
| b,a,n | |
| a,n,a |
Сначала своя запись и основание, затем сверка.
Полная пауза
Две минуты без проекции, чтения, вычислений и обсуждения. Отведи взгляд и смени позу.
Построение без изменения исходника
Модель: удалить дефисы из s="а-б". Начально t=""; буква а даёт t="а", дефис пропускается, буква б даёт t="аб". Условие ch!="-". В A2 нужно другое условие для пробела.
A2. Составь код удаления всех обычных пробелов: прочитать s; t=""; для каждого ch из s добавлять ch к t, только если ch!=" "; вывести t после цикла. Проверь строку «а б в» без кавычек (между б и в два пробела), затем пустую. Один случай на ПК, второй вручную.
Заготовка для своей записи:
| Вход | Моя новая строка |
|---|---|
| а б в | |
| Пустая строка |
Семь минут: три на свои трассы, три на исправление/проверку, одна на сверку. В коротком варианте — шесть минут.
Концептуальная иллюстрация. Точные данные определены условиями, таблицами и схемами; предметы на рисунке не являются входными данными.
Индекс требует непустого входа
Модель s="ок": длина 2, последний индекс 1. Для пустой строки длина 0, ни один индекс не допустим. До чтения края нужно проверить len(s)>0.
| Вход | Можно читать края? |
|---|---|
| Непустой | Да, индексы 0 и len(s)−1 |
| Пустой | Нет, отдельный ответ |
B1. Код print(s[0],s[len(s)-1]) должен показать края непустой строки, но s может быть пустой. Предскажи результат для s="" и исправь с if: при пустой вывести «пусто». Проверь также s="я".
Три минуты на свою попытку, затем одна минута на сверку основания. Допустимы разные корректные решения.
Проверка вымышленного ответа ИИ
AI1. Вымышленный ИИ для s="кот" предлагает for i in range(1,len(s)+1): print(s[i]). Выпиши напечатанные буквы до ошибки и недопустимый индекс. Исправь диапазон для печати всех букв по порядку.
Это заранее составленный учебный пример. Самостоятельно проверь конкретный шаг; обращение к сервису не требуется.
Помощь и резерв
- Нумерует с 1. Подпиши 0 под первой буквой.
- Берёт индекс длины. Последний индекс на 1 меньше.
- Стирает пробелы автоматически. input их сохраняет; удаление — наша программа.
- Путает a/A/а. Проверь алфавит и регистр.
D1. Резерв. Начально t="". Для каждого ch строки s="абв" выполнять t=ch+t. Выпиши t после шагов и объясни отличие от t=t+ch.
D1 — 3–4 минуты для быстро справившихся после основной работы; иначе отдельный резерв следующего занятия. H1, весь тест и шесть новых случаев не складываются в одно обязательное домашнее задание.
Индивидуальный итог
Четыре полные минуты лично. Условия заранее на бумаге. Памятка и разобранные модели разрешены; ключи и веб-разбор закрыты. Учитель не даёт учебных подсказок. Сбор после четырёх минут.
E1. Python 3: s="мир". Найди len(s) и s[1].
E2. Python 3: k=0; for ch in s: если ch=="a", k=k+1; затем print(k). Вход s="Aa" (латинские буквы). Сколько напечатает и почему?
E3. Для пустой строки алгоритм t=""; for ch in s: t=t+ch; затем print(t). Сколько итераций и какая итоговая t?
Разбор после своей попытки
После исправления выбери один новый пример из самопроверки.
Материалы и самопроверка
Презентация, самостоятельный план учителя, рабочий лист, выходной билет и бумажная самопроверка открываются отдельными карточками. DOCX можно смотреть на сайте и скачать. PDF для печати:
Самопроверка на сайте: шесть вопросов с пояснениями, отдельно 5–7 минут. Бумажная версия с письменными основаниями и разбором — 8–12 минут. Все шесть новых письменных случаев — ещё 8–10 минут; выбирай прежде всего случай к своей ошибке. Эти модули не прибавляют к основным 45 минутам и не задаются целиком вместе с H1 автоматически. Пояснения и новые случаи для бумажного разбора есть в плане учителя.
Домашний перенос
H1. Домой 5–7 минут, ПК необязателен. 1) Посчитай латинские строчные o в robot. 2) Удали обычный пробел из «кот пёс» без кавычек. Для каждого задания запиши состояния счётчика или новой строки по буквам.
Полное условие и памятка есть на листе. Решение запиши в тетради. Достаточно 5–7 минут с сохранённой опорой.
Источники
ФРП2025: содержание 8 класса с.10 и планирование с.35–37 — язык и система программирования, данные, ввод/вывод, составление и проверка программ. Python 3 выбран как один из языков, допускаемых программой; часы и последовательность КТП сохранены. Учебник школы не указан; номера параграфов не назначены.
6 вопросов по теме «Посимвольная обработка строк: самопроверка». Выбери ответ, прочитай объяснение и попробуй ещё раз, если ошибся.
Открыть отдельноВопрос 1 из 6
ТренировкаБез отметки и ограничения времени. Первый ответ учитывается отдельно от исправлений. При обновлении страницы ответы сбросятся.
Скачать и открыть
Материалы урока
6 материаловПодготовка к уроку
2 материала· для учителей
20 слайдов, отдельная качественная иллюстрация на каждом, редактируемые примеры и таблицы, практика, проверка ответа ИИ и заметки учителю.
Презентация
Самостоятельный план 45/40 минут: полные условия и ключи, карта 20 слайдов, помощь, индивидуальный итог, 18 объяснений самопроверки и шесть случаев переноса.
Методичка · MediaSchool
Рабочие листы и практика
3 материала· для учеников
Три страницы: памятка, собственные попытки, два основных действия, проверка совета ИИ, помощь, резерв и домашний перенос.
Рабочий лист
Два билета на А4. Четыре минуты индивидуально, памятка разрешена, шесть формирующих баллов.
Рабочий лист
Шесть вопросов совпадают с тестом на странице. Две страницы; 8–12 минут с письменными основаниями и разбором, ключи и новые случаи в плане.
Рабочий лист
Проверка знаний
1 материал· для учеников
6 вопросов с объяснениями и повторной попыткой.
Проверочная
От сообщества
Материалы сообщества0
Дополнения от учителей к этому уроку. Проверены модерацией, но не являются редакционным контентом MediaSchool.
Поделитесь первым материалом
Рабочий лист, презентация или методичка помогут другим учителям подготовиться к уроку.
Комментарии
Войдите, чтобы оставлять комментарии.
Пока нет комментариев. Будьте первым!