Технологическая карта урока по информатике в 10 классе. Алгоритмы обработки символьных строк: разбиение строки на слова по пробельным символам
план-конспект урока по информатике и икт (10 класс)
Алгоритмы обработки символьных данных. данных. Встроенные функции языка программирования для обработки символьных строк. Алгоритмы обработки символьных строк: подсчёт количества появлений символа в строке, разбиение строки на слова по пробельным символам, поиск подстроки внутри данной строки, замена найденной подстроки на другую строку.
Скачать:
Вложение | Размер |
---|---|
Технологическая карта урока | 84.75 КБ |
Презентация к уроку | 1.46 МБ |
Предварительный просмотр:
1. ИНФОРМАЦИЯ О РАЗРАБОТЧИКЕ
ФИО разработчика | Рафикова Наталья Алексеевна |
Место работы | ГБОУ школа № 661 Приморского района Санкт-Петербурга |
2. ОБЩАЯ ИНФОРМАЦИЯ ПО УРОКУ
3. БЛОЧНО-МОДУЛЬНОЕ ОПИСАНИЕ УРОКА
БЛОК 1. Вхождение в тему урока и создание условий для осознанного восприятия нового материала |
Этап 1.1. Мотивирование на учебную деятельность (5 мин) |
Укажите формы организации учебной деятельности на данном этапе урока. Опишите конкретную учебную установку, вопрос, задание, интересный факт, которые мотивируют мыслительную деятельность школьника (это интересно/знаешь ли ты, что) |
Разминка «Угадай». Каждому учащемуся на спину приклеивается стикер с любым понятием по программированию — цикл for, параметр sep и т.д. Можно прочитать, что написано на спине у других, но, естественно, не на своей. Задача — по описанию партнёра угадать, что написано на собственном стикере. На уроке вам предстоит немного угадывать. |
Этап 1.2. Актуализация опорных знаний (5 мин) |
Повторение изученного материала прошлых уроках. Что мы знаем? Команды print(), input(), типы данных int, float, str, индексация строки, срез строки. Решение задач по пройденной теме (в парах) по карточкам. |
Этап 1.3. Целеполагание |
Цель нашего урока – узнать некоторые методы строк. Научимся применять их при написании кода. Поэтому наш урок будет носить практический характер. |
БЛОК 2. Освоение нового материала |
Этап 2.1. Осуществление учебных действий по освоению нового материала (20 мин) |
Мы уже знакомы с некоторыми встроенными функциями: min(), max(), len(), int(), float() и т.д. Метод — это специализированная функция. Как и функция, он вызывается для выполнения отдельной задачи, но метод вызывается для определенного объекта и “знает” о своем целевом объекте во время выполнения. Метод вызывается командой вида имя_объекта.имя_метода(параметры). Познакомимся с двумя методами, которые будем применять к строке s. Как вы думаете s.find() и s.split() что делают? Попробуйте угадать? Подчеркиваю: если знаете английский, знаете Питон! Метод find() (от англ. find – найти) находит индекс первого вхождения подстроки в исходную строку s. Если строка s не содержит подстроки , то метод возвращает значение -1. Метод split()(от англ. split – расщепить) возвращает список слов, полученных при разбиении строки. Давайте разберём, как применяются эти методы в программном коде. Предположим, что с клавиатуры вводится строка, содержащая имя, отчество и фамилию человека, например: Иван Петрович Семёнов. Каждые два слова разделены одним пробелом, в начале строки пробелов нет. В результате обработки должна получиться новая строка, содержащая фамилию и инициалы: Семёнов И.П. Возможный алгоритм решения этой задачи может быть на псевдокоде записан так:
Мы последовательно выделяем из строки три элемента: имя, отчество и фамилию, используя тот факт, что они разделены одиночными пробелами. После того как имя будет сохранено в отдельной переменной, в строке останется только отчество и фамилия. После «изъятия» отчества остаётся только фамилия. Теперь нужно собрать строку-результат из частей: «сцепить» фамилию и первые буквы имени и отчества, поставив пробелы и точки между ними. Давайте применим метод find и срезы, чтобы решить поставленную задачу. 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) Используя встроенные функции языка Python, эту задачу можно решить намного проще. Прежде всего нужно разбить введённую строку на отдельные слова. Которые разделены пробелами. Для этого используется метод split(), который возвращает список слов, полученных при разбиении строки. fio = s.split() Если входная строка соответствует формату условия, то в этом списке будет три элемента: имя fio[0], отчество fio[1] и фамилия fio[2]. Теперь остаётся только собрать строку-результат в нужном виде. Запись fio[0][0] означает 0-й символ из 0-го элемента списка fio, Аналогично fio[1][0] – первая буква отчества и т.п. print ( "Введите имя, отчество и фамилию:" ) s = input() fio = s.split() s = fio[2] + " " + fio[0][0] + "." + fio[1][0] + "." print(s) |
Этап 2.2. Проверка первичного усвоения (1 мин) |
Вернемся к целям нашего урока. Как вы считаете, мы достигли их? Узнали мы как работать с методами строк (поиском и разбиением)? Познакомились мы с тем, как использовать методы split() и find()? |
БЛОК 3. Применение изученного материала |
Этап 3.1. Применение знаний, в том числе в новых ситуациях |
Для того, чтобы проверить на практике полученные знания, мы с вами запускаем среду программирования Python IDLE и решаем задачу: |
Этап 3.2. Выполнение межпредметных заданий и заданий из реальной жизни |
Подберите соответствующие учебные задания |
Этап 3.3. Выполнение заданий в формате ГИА (ОГЭ, ЕГЭ) |
Подберите соответствующие учебные задания |
Этап 3.4. Развитие функциональной грамотности |
Подберите соответствующие учебные задания |
Этап 3.5. Систематизация знаний и умений |
Подберите учебные задания на выявление связи изученной на уроке темы с освоенным ранее материалом/другими предметами |
БЛОК 4. Проверка приобретенных знаний, умений и навыков |
Этап 4.1. Диагностика/самодиагностика |
С какими строковыми методами мы сегодня познакомились?
Рефлексия «Светофор». Учащиеся продолжают предложение: |
БЛОК 5. Подведение итогов, домашнее задание |
Этап 5.1. Рефлексия |
Повторите и закрепите правила составления программы с использованием функций find() и split() |
Этап 5.2. Домашнее задание |
Введите рекомендации по домашнему заданию. |
Задача 1. Ввести адрес файла и «разобрать» его на части, разделенные знаком "/". Каждую часть вывести в отдельной строке. Пример: Введите адрес файла: C:/Фото/2013/Поход/vasya.jpg C: Фото 2013 Поход vasya.jpg Задача 2. Ввести с клавиатуры дату в формате: 12 мая 2024. Программа должна вывести эту дату в другом формате: 12.05.2024 |
Предварительный просмотр:
Подписи к слайдам:
Повторение материала
Методы и функции
Методы и функции Мы уже знакомы с некоторыми встроенными функциями: min(), max(), len(), int(), float() и т.д. Метод — это специализированная функция, тесно связанная с объектом. Как и функция, метод вызывается для выполнения отдельной задачи, но он вызывается для определенного объекта и знает о своем целевом объекте во время выполнения. Метод вызывается в виде имя_объекта.имя_метода(параметры) . 4
5 s.find (" * ") s.split ( "+" ) s = input() Методы и функции Метод find (< sub >) ( от англ. find – найти) находит индекс первого вхождения подстроки < sub > в исходную строку s . Если строка s не содержит подстроки < sub > , то метод возвращает значение -1 . Метод split ( < sub >) ( от англ. split – р асщепить) возвращает список слов, полученных при разбиении строки.
Пример обработки строк с помощью методов поиска и разбиения
7 Ввод данных: Введите имя, отчество и фамилию: Иван Петрович Семёнов Вывод: Семёнов И.П. Задача . Ввести имя, отчество и фамилию. Преобразовать их к формату «фамилия-инициалы »
Алгоритм найти первый пробел и выделить имя удалить имя с пробелом из основной строки найти первый пробел и выделить отчество удалить отчество с пробелом из основной строки «сцепить» фамилию, первые буквы имени и фамилии, точки, пробелы… 8
Пример программы: 9 print ( "Введите имя, отчество и фамилию:" ) s = input() n = s.find ( " " ) name = s[:n] s = s[n+1:] n = s.find ( " " ) name 2 = s [: n ] s = s [ n +1:] s = s + " " + name[0 ] + "." + name2[0] + ". " print(s) Метод find (< sub >) находит индекс первого вхождения подстроки < sub > в исходную строку s . Если строка s не содержит подстроки < sub > , то метод возвращает значение -1 .
Решение в стиле Python 10 print ( "Введите имя, отчество и фамилию:" ) s = input() f io = s.sp l it () s = fio [2] + " " + fio [0][0] + "." + fio [1][0] + "." print(s) Иван Петрович Семёнов fio [ 0 ] fio [ 1 ] fio [ 2 ] Метод split ( < sub >) ( от англ. split – р асщепить) возвращает список слов, полученных при разбиении строки.
Самостоятельно: 1) Ввести с клавиатуры в одну строку фамилию, имя и отчество, разделив их пробелом. Вывести фамилию и инициалы. Пример: Введите фамилию, имя и отчество: Иванов Петр Семёнович П . С . Иванов 11
Самостоятельно: 2 ) Ввести адрес файла и «разобрать» его на части, разделенные знаком "/". Каждую часть вывести в отдельной строке. Пример: Введите адрес файла: C:/Фото/2013/Поход/vasya.jpg C: Фото 2013 Поход vasya.jpg 12
Самостоятельно: 3 ) Ввести с клавиатуры дату в формате: 12 мая 2024. Программа должна вывести эту дату в другом формате: 12.05.2024 13
По теме: методические разработки, презентации и конспекты
Технологическая карта урока технологии в 5 классе. Тема «Обработка пояса»
Содержательная цель: Закрепить знания и умения обработки пояса.Учитель предлагает найти содержание темы урока, активизирует знания учащихся, создает проблемную ситуацию. Чтобы точнее сформулировать те...
Технологическая карта урока по информатике 6 класс на тему "Алгоритм"
Цель урока: сформировать представление у учащихся о понятие алгоритма, определить его свойства, дать понятие исполнителя алгоритма....
Технологическая карта урока. Босова. Информатика . 5 класс. ФГОС.Табличное решение логических задач
Технологическая карта урока. Босова. Информатика . 5 класс. ФГОС.Урок 16. Табличное решение логических задачПланируемые образовательные результаты:предметные – умение представлять информацию в т...
Презентация и технологическая карта урока по информатике, 8 класс. Тема: "Алгоритмическая конструкция повторение. Цикл с заданным условием продолжения работы."
Технологическая карта урока Предмет, класс: Информатика и ИКТ, 8 класс.Название и автор учебника: Информатика и ИКТ, Босова Л. Л.Тема урока: Алгоритмическая конструкция...
Технологическая карта урока. Босова. Информатика. 5 класс. ФГОС. Информация вокруг нас.
Технологическая карта урока. Босова. Информатика. 5 класс. ФГОС.Урок 1. Информация вокруг нас.Цели урока:- рассмотрение правил техники безопасности и организации рабочего места при работе в комп...
Технологическая карта урока. Босова. Информатика . 5 класс. ФГОС. Компьютер – универсальная машина для работы с информацией.
Технологическая карта урока. Босова. Информатика . 5 класс. ФГОС.Урок 2. Компьютер – универсальная машина для работы с информацией.Цели урока:- расширение представления школьников...
Технологическая карта урока. Босова. Информатика . 5 класс. ФГОС. Ввод информации в память компьютера.
Технологическая карта урока. Босова. Информатика . 5 класс. ФГОС.Урок 3. Ввод информации в память компьютера.Цели урока:- расширение представления школьников об устройств...