Онлайн-компилятор и отладчик Python

Пишите, запускайте и отлаживайте Python онлайн. Используйте точки останова и пошаговое выполнение в серверном режиме — без установки.

Предустановленные библиотеки
🚀 4,279,637 всего выполнений (37 в этом месяце)
Вывод

Практикуйте Python на задачах

Решайте задачи прямо в редакторе: запускайте тесты, отправляйте решение и получайте AI-рецензию.

Все задачи на Python
Легко

Среднее из трёх

Вычислите среднее трёх целых чисел.

Вы освоите АрифметикаДеление
BeginnerLearning-pathVariables
Легко

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

Вы освоите АрифметикаВозвращаемые значения
BeginnerLearning-pathVariables
Средне

Одно поколение генетического алгоритма

Выведите следующее поколение битовых строк с помощью турнирного отбора, одноточечного скрещивания и мутации.

Вы освоите Генетические алгоритмыЭволюционный поиск
OptimizationSimulationискусственный интеллект
Пока нет решений
Легко

Многорукий бандит с эпсилон-жадной стратегией

Найдите баланс между исследованием и использованием в задаче многорукого бандита с эпсилон-жадным выбором действий.

Вы освоите Исследование и использованиеБандиты
Обучение с подкреплениемискусственный интеллектмашинное обучение
Пока нет решений
Легко

Распределение состояний цепи Маркова

Распространите распределение вероятностей через матрицу переходов цепи Маркова на заданное число шагов.

Вы освоите Цепи МарковаВероятность
Simulationискусственный интеллектmath
Пока нет решений
Средне

Итерация по ценностям

Вычислите ценность каждого состояния марковского процесса принятия решений, многократно применяя оптимальное обновление Беллмана.

Вы освоите Уравнение БеллманаMDP
Обучение с подкреплениемискусственный интеллектмашинное обучение
Пока нет решений
Средне

Обновления Q-learning

Примените обновление Q-learning к потоку опыта и посмотрите, как награды распространяются назад к предыдущим состояниям.

Вы освоите Q-learningДисконтированные награды
Обучение с подкреплениемискусственный интеллектмашинное обучение
Пока нет решений
Средне

Альфа-бета отсечение

Оцените дерево игры минимаксом с альфа-бета отсечением и посчитайте, сколько листьев поиск действительно просмотрел.

Вы освоите Альфа-бета отсечениеПоиск в играх
RecursionTreesискусственный интеллект
Пока нет решений
Средне

Крестики-нолики с минимаксом

Выберите идеальный ход в крестиках-ноликах, перебрав всё дерево игры минимаксом.

Вы освоите МинимаксДеревья игры
Recursionискусственный интеллект
Пока нет решений
Средне

Поиск A* на взвешенной сетке

Найдите самый дешёвый путь через сетку стоимостей местности с помощью A* — алгоритма поиска, на котором строится навигация в играх и робототехнике.

Вы освоите Поиск A*Эвристики
GraphsGridsShortest-pathискусственный интеллект
Пока нет решений
Средне

Сэмплирование с температурой и top-k

Выберите следующий токен как языковая модель: оставьте k наибольших логитов, примените температуру и сделайте выборку.

Вы освоите Генерация текстаСэмплирование
искусственный интеллектмашинное обучение
Пока нет решений
Сложно

Многоголовое самовнимание

Спроецируйте вход в запросы, ключи и значения, выполните внимание в нескольких головах параллельно и объедините их.

Вы освоите Многоголовое вниманиеМатричные проекции
искусственный интеллектмашинное обучение
Пока нет решений

🐍 Об онлайн-компиляторе Python

Онлайн-компилятор и интерпретатор Python от CodeUtility позволяет писать, запускать и тестировать код прямо в браузере — без установки и настройки. Он работает в безопасной песочнице и поддерживает реальные версии Python от 3.10 до 3.13.

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

Идеально для новичков, студентов и разработчиков, которым нужна облегчённая онлайн‑IDE для практики или быстрого прототипирования.

Больше, чем средство запуска кода

Используйте в одном исполнителе многофайловый редактор, изолированный терминал выполнения, библиотеки для выбранной среды, постоянные рабочие пространства, общий доступ и совместную работу в реальном времени.

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

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

  1. Выберите версию и отредактируйте текущий файл или откройте другой файл рабочего пространства.
  2. Запустите код, при необходимости введите данные в терминале и просмотрите сохранённую историю запусков.
  3. Используйте библиотеки, инструменты рабочего пространства, общий доступ и чат, когда для задачи требуется несколько фрагментов кода.

💡 Основы Python и примеры, которые можно попробовать выше

1. Объявление переменных и констант

Python - язык с динамической типизацией, поэтому типы заранее объявлять не нужно. Встроенного ключевого слова для констант нет, но по соглашению константы пишут ПРОПИСНЫМИ буквами.

# Переменные
x = 10
pi = 3.14
name = "Алиса"
is_active = True

# Константы (по соглашению)
MAX_USERS = 100
APP_NAME = "CodeUtility"

# Константы всё ещё можно переопределить (не запрещено)
MAX_USERS = 200  # ⚠️ Технически допустимо, но не рекомендуется

2. Условные конструкции

Управляйте логикой с помощью блоков if, elif и else. В Python 3.10+ можно также использовать match-case как альтернативу switch-case.

# Обычный if-elif-else
x = 2
if x == 1:
    print("Один")
elif x == 2:
    print("Два")
else:
    print("Другое")

Альтернатива: match-case (Python 3.10+)

# Требуется Python 3.10+
x = 2
match x:
    case 1:
        print("Один")
    case 2:
        print("Два")
    case _:
        print("Другое")

3. Циклы

for используется для перебора последовательностей, while выполняется, пока условие истинно.

for i in range(3):
    print(i)

count = 3
while count > 0:
    print(count)
    count -= 1

4. Списки

Списки - упорядоченные изменяемые коллекции. Доступ к элементам осуществляется по индексу.

fruits = ["apple", "banana"]
print(fruits[0])
print(len(fruits))

5. Операции со списками

Добавляйте, удаляйте, берите срезы и переворачивайте списки. Генераторы списков позволяют компактно итерироваться.

fruits.append("cherry")
fruits.insert(1, "kiwi")
fruits.remove("banana")
fruits.pop()

print(fruits[1:3])
print(fruits[::-1])

squares = [x*x for x in range(5)]

6. Ввод/вывод в консоли

Используйте input() для чтения ввода и print() для вывода.

Можно напечатать несколько строк с помощью \n (символ новой строки) или вызвать print() несколько раз.

# Чтение ввода
name = input("Введите ваше имя: ")
print("Привет", name)

# Печать нескольких строк
print("Строка 1\nСтрока 2\nСтрока 3")

# Или используйте несколько вызовов print
print("Строка A")
print("Строка B")
print("Строка C")

7. Функции

Функции помогают организовывать код и переиспользовать его. Используйте параметры и возвращаемые значения.

def greet(name):
    return "Привет " + name

print(greet("Алиса"))

8. Словари

Хранят пары ключ‑значение. Ключи уникальны, значения доступны по ключам.

person = {"name": "Боб", "age": 25}
print(person["name"])
print(person.get("email", "Не указано"))

9. Обработка исключений

Используйте try и except, чтобы корректно перехватывать и обрабатывать ошибки.

try:
    x = 1 / 0
except ZeroDivisionError:
    print("Нельзя делить на ноль")

10. Файловый ввод/вывод

Читайте и записывайте файлы с помощью open().

with open("data.txt", "w") as f:
    f.write("Привет, мир")

with open("data.txt", "r") as f:
    print(f.read())

11. Работа со строками

У строк Python есть мощные методы: strip(), replace() и split().

text = "  Привет, мир  "
print(text.strip())
print(text.upper())
print(text.replace("Привет", "Здравствуй"))
print(text.split())

12. Классы и объекты

Определяйте переиспользуемые шаблоны с помощью классов. Используйте __init__ для инициализации объектов.

class Person:
    def __init__(self, name):
        self.name = name

    def greet(self):
        return "Привет, я " + self.name

p = Person("Алиса")
print(p.greet())

🐞 Как отлаживать Python-код онлайн

Онлайн-отладчик Python помогает находить логические ошибки без установки Python или IDE. Отладка выполняется в серверном режиме на Python 3.10–3.13.

  1. Выберите серверную версию Python в меню среды выполнения.
  2. Нажмите рядом с номером строки, чтобы установить одну или несколько точек останова.
  3. Выберите Debug, чтобы запустить программу и остановиться в первой подходящей точке.
  4. Проверьте текущую строку и переменные, затем используйте Continue, Step Over, Step Into или Step Out.
  5. Выберите Stop, чтобы завершить сеанс отладки.

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