Python для школьников: 7 упражнений разного уровня сложности

На Python можно создавать многое: от простых скриптов до сложных игр и приложений. На этом языке программирования пишут даже в NASA и YouTube. Если вы начинаете или продолжаете свой путь в программировании на Python, подготовили 7 проектов, которые помогут разобраться без скучных учебников. Здесь не будет сложных терминов или запутанных задач — только понятные примеры, которые вы сможете повторить.

Python для школьников: 7 упражнений разного уровня сложности

Зачем это нужно?

Программирование — как велосипед: чтобы научиться, нужно пробовать и не бояться ошибок. Каждое упражнение покажет, как работают переменные, циклы, условия и другие «кирпичики» кода. Вы увидите, что программировать — это весело! Например, сможете написать свой первый калькулятор, создать список любимых фильмов или сделать игру «Угадай число».

Начнём с простого – напишем программу, которая будет выполнять основные математические операции.

Упражнение 1. Создание простого калькулятора

🎯 Цель задания: Разработать программу-калькулятор, которая поддерживает базовые арифметические действия: сложение, вычитание, умножение и деление.

📚 Используемые инструменты: для реализации достаточно стандартных возможностей Python – дополнительные библиотеки не требуются.

Пример

print("Приветствуем в программе 'Калькулятор'!") number1 = float(input("Введите первое число: ")) # Получаем первое значение number2 = float(input("Введите второе число: ")) # Получаем второе значение print("Доступные операции:") print("1: Прибавить") print("2: Отнять") print("3: Умножить") print("4: Разделить") operation = input("Укажите номер действия (1-4): ") # Запрос операции if operation == '1': print(f"{number1} + {number2} = {number1 + number2}") # Сумма elif operation == '2': print(f"{number1} - {number2} = {number1 - number2}") # Разность elif operation == '3': print(f"{number1} * {number2} = {number1 * number2}") # Произведение elif operation == '4': if number2 == 0: print("Ошибка: нельзя делить на ноль!") # Проверка деления else: print(f"{number1} / {number2} = {number1 / number2}") # Частное else: print("Некорректный выбор операции") # Обработка ошибок ввода

Всё просто. Программа запрашивает у вас два числа, а затем предлагает выбрать одну из четырёх арифметических операций. В зависимости от выбора, она выводит результат вычислений.

Python для школьников: 7 упражнений разного уровня сложности

🔎 Осваиваемые навыки:

  • Работа с переменными – сохранение и обработка пользовательского ввода.
  • Интерактивность – использование `input()` для взаимодействия с пользователем.
  • Преобразование типов – конвертация строк в числа с плавающей точкой.
  • Логические ветвления – управление потоком выполнения через `if-elif-else`.
  • Базовые вычисления – применение арифметических операторов.
  • Обработка ошибок – предотвращение некорректных операций (деление на ноль).

🚀 Практическая ценность:

Проект закладывает фундамент для понимания взаимодействия программы с пользователем и обработки данных. На его основе можно создавать более сложные приложения – например, добавить историю вычислений или графический интерфейс.

🔹 Варианты улучшения:

  • Реализовать циклическую работу программы через `while True`.
  • Добавить многошаговые вычисления с сохранением промежуточных результатов.
  • Расширить функционал: степени.

Попробуйте создать свой калькулятор и поэкспериментируй с его возможностями! 🧮

Упражнение 2. Игра «Тайное число»

🎯 Цель проекта:

Разработать интерактивную игру, где программа случайным образом выбирает число от 1 до 10, а игроку предстоит его отгадать. После каждого неверного ответа система даёт подсказку: «Загаданное число больше» или «меньше». Победа наступает при правильном ответе, и игрок видит поздравительное сообщение.

📦Необходимые инструменты:

Для генерации случайного числа используй стандартную библиотеку Python – random. Её не требуется дополнительно устанавливать. Просто подключи в начале программы строку:

import random

Шаблон кода для старта:

import random print("Привет! Я загадал число от 1 до 10. Попробуй угадать! 😉") secret_number = random.randint(1, 10) # Компьютер загадывает число attempts = 0 # Счётчик попыток while True: guess = int(input("Твой вариант: ")) # Игрок вводит число attempts += 1 # Увеличиваем счётчик if guess < secret_number: print("Бери выше! ↗️") elif guess > secret_number: print("Поменьше! ↘️") else: print(f"Ура! Ты угадал за {attempts} попыток! 🎉") break # Выход из цикла, если число угадано

Здесь используем функцию random.randint() для того, чтобы компьютер загадал случайное число.

Python для школьников: 7 упражнений разного уровня сложности

Чему научитесь?

  • Подключение модулей (import random) – работа с внешними ресурсами.
  • Бесконечный цикл (while True) – повторение действий до достижения цели.
  • Логические ветвления (if-elif-else) – анализ введённых данных.
  • Ввод и вывод информации (input() , print() ) – взаимодействие с пользователем.
  • Управление данными – сохранение значений в переменных.

Идеи для улучшения:

  • Внедрите проверку корректности ввода (только цифры).
  • Расширьте диапазон загадывания (например, 1–100).
  • Добавьте таблицу рекордов с сохранением лучших результатов.

Проект помогает понять основы программирования через создание реальной игры, которую можно тестировать с друзьями. Это первый шаг к разработке собственных приложений!

Упражнение 3. Скрипт для подсчёта средней оценки

🎯 Задача: школьникам предлагается написать программу, которая запрашивает у пользователя количество учеников в классе, затем вводит их оценки и вычисляет среднюю оценку.

📚 Нужна ли библиотека? Нет, для этого упражнения не требуется дополнительных библиотек.

Пример кода:

print("Программа для расчета средней оценки") num_students = int(input("Введите количество учеников в классе: ")) # Запрашиваем количество учеников total_score = 0 # Переменная для суммы всех оценок for i in range(num_students): # Цикл, который повторяется для каждого ученика score = float(input(f"Введите оценку ученика {i+1}: ")) # Запрос оценки total_score += score # Прибавляем оценку к общей сумме average_score = total_score / num_students # Вычисляем среднее значение print(f"Средняя оценка в классе: {average_score:.2f}") # Выводим результат с округлением до двух знаков

Разбор кода

1. Ввод данных

  • input() используется для запроса количества учеников и оценок.
  • int() применяется для преобразования введённого количества учеников в целое число.
  • float() используется для преобразования оценок в число с плавающей точкой.

2. Цикл for

  • Проходится по диапазону range(num_students), где num_students — количество учеников.
  • Запрашивается оценка каждого ученика и добавляется в total_score.

3. Расчет средней оценки

  • Общая сумма оценок делится на количество учеников.
  • Используется :.2f для округления результата до двух знаков после запятой.

🔎 Какие концепции Python вы освоите?

  • Переменные — для хранения данных (количество учеников, сумма оценок, средний балл).
  • Типы данных — int для количества учеников и float для оценки.
  • Функция input() — ввод данных от пользователя.
  • Цикл for — позволяет выполнить код нужное количество раз.
  • Арифметические операции — суммирование и деление для расчёта среднего.
  • Форматированный вывод (f-строки) — удобное отображение результата с округлением.

🚀 Почему это полезно?

Скрипт показывает, как программы помогают в реальных задачах. Представьте, что вам нужно узнать средний балл в классе — вместо сложного подсчёта вручную, вы просто вводите данные, а компьютер всё делает за вас! Это первый шаг к созданию полезных программ, которые экономят время.

Python для школьников: 7 упражнений разного уровня сложности

🔹 Дополнительные идеи:

  • Добавьте проверку ввода, чтобы пользователь не мог ввести отрицательные оценки.
  • Расширьте программу: пусть она выводит не только среднюю оценку, но и лучшую и худшую.

Попробуй написать этот код, запусти его и увидишь, как легко автоматизировать рутинные задачи! 💡

Упражнение 4. Приложение-конвертер

🎯 Задача: создать программу, которая поможет конвертировать единицы измерения. Пользователь выбирает, что хочет перевести: длину, вес или температуру. Затем вводит значение и исходную единицу измерения, а программа выполняет пересчёт в нужную систему.

📚 Нужна ли библиотека? Нет, здесь достаточно стандартных функций Python.

Пример кода:

print("Добро пожаловать в конвертер единиц измерения!") while True: print("\nВыберите, что вы хотите конвертировать:") print("1. Длина") print("2. Вес") print("3. Температура") print("4. Выход") choice = input("Введите номер (1-4): ") if choice == '1': value = float(input("Введите значение: ")) unit = input("Введите исходную единицу (м, см, мм, дюйм, фут): ") if unit == 'м': print(value, "метров =", value * 100, "сантиметров") elif unit == 'см': print(value, "сантиметров =", value / 100, "метров") # Добавьте конвертацию для других единиц длины elif choice == '2': value = float(input("Введите значение: ")) unit = input("Введите исходную единицу (кг, г, фунт): ") if unit == 'кг': print(value, "килограммов =", value * 1000, "граммов") elif unit == 'г': print(value, "граммов =", value / 1000, "килограммов") # Добавьте конвертацию для фунтов elif choice == '3': value = float(input("Введите температуру: ")) unit = input("Введите исходную шкалу (C, F): ") if unit == 'C': print(value, "градусов Цельсия =", (value * 9/5) + 32, "градусов Фаренгейта") elif unit == 'F': print(value, "градусов Фаренгейта =", (value - 32) * 5/9, "градусов Цельсия") elif choice == '4': print("До свидания!") break else: print("Неверный выбор. Попробуйте еще раз.")

В этом коде создаём простое консольное приложение, которое позволяет конвертировать единицы измерения длины, веса и температуры.

🔎 Осваиваемые навыки:

  • Циклы (while True) — программа работает, пока пользователь не выберет выход.
  • Функция input() — ввод данных от пользователя.
  • Типы данных (float, str) — числа с плавающей точкой для вычислений, строки для выбора единиц.
  • Условные операторы (if-elif-else) — логика выбора конверсии.
  • Арифметические операции — умножение, деление и формулы пересчёта.

🚀 Практическая ценность

Вы создаёте программу, которая пригодиться в жизни. Конвертеры встречаются повсюду: в науке, кулинарии, строительстве. Попробуйте запустить код (кнопка Run) и убедитесь, насколько удобно автоматизировать пересчёт значений.

Python для школьников: 7 упражнений разного уровня сложности

🔹 Варианты улучшения:

  • Добавь больше единиц измерения (например, мили, унции, кельвины).
  • Улучши программу: сделай так, чтобы она запрашивала единицу, в которую нужно перевести значение.
  • Оформи код в виде функций для удобства.

Запустите этот конвертер и используйте в своих задачах! 🔥

Упражнение 5. Скрипт для обработки текстовых файлов

🎯 Задача: Создать программу, которая читает текстовый файл и анализирует его содержимое: определяет количество символов, слов и строк, а также позволяет искать заданное слово в тексте.

📚 Нужна ли библиотека? Нет, достаточно стандартных функций Python.

Пример кода:

print("Программа для обработки текстовых файлов") filename = input("Введите название файла (включая расширение .txt): ") try: with open(filename, 'r') as file: text = file.read() print("\nИнформация о файле:") print(f"Название файла: {filename}") print(f"Количество символов: {len(text)}") print(f"Количество слов: {len(text.split())}") print(f"Количество строк: {text.count('\n')+1}") search_word = input("\nВведите слово для поиска: ") if search_word in text: print(f"Слово '{search_word}' найдено в файле {filename}") else: print(f"Слово '{search_word}' не найдено в файле {filename}") except FileNotFoundError: print(f"Файл '{filename}' не найден. Проверьте название и расположение файла.") except: print("Произошла ошибка при обработке файла.")

🔎 Какие концепции Python вы освоите?

  • Работа с файлами (open(), read()) — открытие, чтение текстовых файлов.
  • Обработка ошибок (try-except) — защита от ошибок (например, если файл не найден).
  • Строковые операции (len(), split(), count()) — анализ текста.
  • Функция input() — ввод данных от пользователя.

🚀 Почему это полезно?

Скрипт поможет понять, как работать с файлами и анализировать текстовые данные. Такие программы могут пригодиться для обработки заметок, анализа документов или даже создания простого текстового поисковика!

🔹 Дополнительные идеи:

  • Добавьте возможность сохранения результатов анализа в новый файл.
  • Улучшите поиск: сделай его регистронезависимым.
  • Реализуйте подсчёт частоты встречаемости каждого слова.

Упражнение 6. Создаём простой графический интерфейс

🎯Задача: разработать элементарное приложение с графическим интерфейсом на Tkinter, которое принимает имя пользователя и отображает персонализированное приветствие по нажатию кнопки.

📚Используемые инструменты: библиотека Tkinter — встроенное решение Python для GUI. Дополнительная установка не требуется.

Шаблон кода:

import tkinter as tk # Подключаем модуль для создания интерфейсов window = tk.Tk() # Инициализируем основное окно window.title("Моё первое приложение") # Задаём название окна # Логика обработки клика def show_greeting(): username = input_field.get() # Считываем данные из поля if username.strip(): greeting_label.config(text=f"Рады видеть, {username}!") else: greeting_label.config(text="Введите имя в поле ниже") # Элементы интерфейса input_label = tk.Label(window, text="Ваше имя:") input_label.pack() # Добавляем текст-подсказку input_field = tk.Entry(window) # Создаём поле ввода input_field.pack() action_button = tk.Button( window, text="Подтвердить", command=show_greeting # Привязываем функцию к кнопке ) action_button.pack() greeting_label = tk.Label(window, text="") greeting_label.pack() window.mainloop() # Активируем интерфейс
Python для школьников: 7 упражнений разного уровня сложности

Чему вы научитесь:

  • Базовому использованию Tkinter — проектирование оконных элементов.
  • Работе с функциями-обработчиками — реакция на действия пользователя.
  • Управлению виджетами — настройка меток, кнопок и полей ввода.
  • Главному циклу приложения — поддержка интерактивности интерфейса.

Практическая ценность:

Графические приложения повышают удобство взаимодействия с программой. Навыки работы с Tkinter позволят создавать полезные инструменты: от конвертеров единиц измерения до персональных органайзеров.

Варианты улучшения:

  • Реализуете кнопку сброса введённых данных.
  • Поэкспериментируйте с шрифтами и цветовой палитрой.
  • Добавьте запись истории приветствий в текстовый файл.
  • Создайте всплывающее окно для отображения приветствия.

Соберите свой уникальный интерфейс и усложните задачу дополнительными функциями.

Упражнение 7. Скрипт для анализа данных

🎯 Задача: создать программу, которая анализирует данные из файла формата CSV. Скрипт должен уметь загружать данные, выводить их основные характеристики и строить гистограмму по выбранному столбцу.

📚 Нужна ли библиотека? Да, понадобятся Pandas для работы с таблицами и Matplotlib для визуализации данных. Установить их можно командой:

pip install pandas matplotlib

Пример кода:

import pandas as pd import matplotlib.pyplot as plt print("Программа для анализа данных") filename = input("Введите название файла в формате .csv: ") try: data = pd.read_csv(filename) # Загрузка данных из CSV-файла print("\nИнформация о данных:") print(data.head()) # Вывод первых 5 строк print(f"\nКоличество строк: {len(data)}") print(f"Количество столбцов: {len(data.columns)}") column_name = input("\nВведите название столбца для анализа: ") if column_name in data.columns: print(f"\nСтатистика по столбцу '{column_name}':") print(data[column_name].describe()) # Вывод статистики по столбцу # Визуализация данных data[column_name].plot(kind='hist', bins=20, edgecolor='black') plt.title(f"Гистограмма для столбца '{column_name}'") plt.xlabel(column_name) plt.ylabel("Частота") plt.show() else: print(f"Столбец '{column_name}' не найден в данных.") except FileNotFoundError: print(f"Файл '{filename}' не найден или не является CSV-файлом.") except Exception as e: print(f"Произошла ошибка: {e}") print("\nПрограмма завершена.")

🔎 Какие концепции Python вы освоите?

  • Работа с файлами (pandas.read_csv()) — загрузка и обработка табличных данных.
  • Функция input() — ввод данных пользователем.
  • Методы pandas (head(), describe()) — анализ данных в таблице.
  • Работа с исключениями (try-except) — защита от ошибок при загрузке данных.
  • Визуализация (matplotlib) — построение графиков и гистограмм.

🚀 Почему это полезно?

Анализ данных применяется в науке, бизнесе, медицине и многих других сферах.

🔹 Дополнительные идеи:

  • Добавьте возможность выбора типа графика (гистограмма, линейный график, диаграмма).
  • Позвольте пользователю фильтровать данные (например, вывести только строки с определёнными значениями).
  • Реализуйте сохранение результатов анализа в новый файл.

Попробуйте запустить код с разными CSV-файлами и исследуйте данные. 📊

Заключение

💻 Каждая строчка кода — это шаг к созданию своих игр, сайтов или даже умных алгоритмов. Когда-то даже самые крутые IT-специалисты начинали с таких же простых задач, как «Угадай число» или конвертер температуры.

Python — это не просто язык, это суперсила. С ним вы можете автоматизировать рутину, рисовать графики для школьных проектов или писать ботов для соцсетей. А главное — чем больше практики, тем больше возможностей! Помните, что программирование учит решать любые задачи — хоть математические, хоть творческие.

Если вы хотите:

  • создавать 2D-игры и анимации,
  • разрабатывать веб-сайты и приложения
  • работать с нейросетями и чат-ботами

Приходите в школу программирования «Пиксель». Здесь вы сможете задавать вопросы преподавателям, участвовать в хакатонах и делать проекты для портфолио.

6
4 комментария