Python для начинающих: Hello World и ещё 4 простых примера кода

Первая программа на Python занимает одну строку с функцией print, которая выводит Hello, World! на экран.

Разбираем, как запустить её на Windows, macOS и Linux, и ещё четыре программы с кодом и настоящим выводом: приветствие по имени, калькулятор, игру «Угадай число» и средний балл. В конце таблица частых ошибок новичков.

Статью написал:
Ваня Буявец, продюсер, основатель Checkroi
Ваня Буявец
Основатель Checkroi, продюсер, эксперт в выборе онлайн-курсов
Все 2944 статьи автора Подписаться на Телеграм-канал
Одобрено экспертом:
Наташа Буявец, основатель Checkroi, эксперт по онлайн-курсам
Наташа Буявец
Основательница Checkroi, продюсер Youtube-каналов, эксперт по онлайн-курсам
Все 3598 экспертных мнений Подписаться на Телеграм-канал
Обложка: Python для начинающих: Hello World и ещё 4 простых примера кода

Первая программа на Python занимает одну строку: print("Hello, World!"). Сохраните её в файл hello.py и запустите в терминале командой python3 hello.py на macOS и Linux или python hello.py на Windows. На экране появится Hello, World!, и это значит, что Python установлен и работает.

Если Python ещё не стоит, начните с инструкции как скачать Python с официального сайта. Ниже пять программ по нарастающей: от приветствия до калькулятора и игры. Каждую мы запустили в Python 3.14, вывод в статье настоящий.

CheckroiCheckroiПодборка курсов по Python464 курса • 48 школСравните цены, школы, программу и найдите выгодные предложения по обучениюСравнить→

Программа Hello World на Python: как написать и запустить

Рой за ноутбуком запускает первую программу на Python

Функция print() выводит на экран то, что стоит в скобках. Текст берут в кавычки, одинарные или двойные, Python их не различает.

  1. Создайте пустой файл hello.py в любом редакторе. Подойдёт даже «Блокнот», но удобнее VS Code: как его настроить, мы разобрали в статье как создать и запустить файл Python в VS Code.
  2. Напишите в файле одну строку:
    print("Hello, World!")
  3. Сохраните файл и откройте терминал в той же папке.
  4. Запустите программу командой из таблицы ниже.
Система Команда
Windows python hello.py или py hello.py
macOS python3 hello.py
Linux python3 hello.py

Вывод:

Hello, World!

На Windows обе команды ставит Python Install Manager, это официальный установщик с python.org. Ставить ничего не хочется совсем? Код можно запустить в браузере, например в Google Colab.

Традиция начинать с фразы «Hello, world» пришла из книги Кернигана и Ритчи «Язык программирования Си» 1978 года, пишет Википедия. С тех пор так проверяют, что язык настроен и программа вообще запускается.

Что ещё умеет print

В print() можно передать несколько значений через запятую. По документации между ними встаёт разделитель sep (по умолчанию пробел), а в конце строки символ end (по умолчанию перевод строки).

print("Hello", "World", sep=", ", end="!\n")
print("Python", 3, True)
print("Загрузка", end="...")
print("готово")

Вывод:

Hello, World!
Python 3 True
Загрузка...готово

Числа и True печатаются без кавычек: print сам превращает их в текст. А end="..." оставил курсор на той же строке, поэтому «готово» встало рядом.

Пример 2: программа спрашивает имя

Вторая программа уже разговаривает с человеком. Функция input() показывает вопрос, ждёт, пока вы что-то наберёте и нажмёте Enter, и возвращает набранное.

name = input("Как вас зовут? ")
print(f"Привет, {name}! Это ваша вторая программа на Python.")

Вывод:

Как вас зовут? Аня
Привет, Аня! Это ваша вторая программа на Python.

Здесь две новые вещи:

  • переменная name хранит ответ, чтобы использовать его ниже;
  • f-строка: буква f перед кавычками разрешает вставлять переменные прямо в текст через фигурные скобки. Такие строки появились в Python 3.6 (PEP 498).

Важная деталь на будущее: по документации input() всегда возвращает строку. Даже если ввести 25, в переменной окажется текст «25», а не число.

Канал основателя Checkroi Вани Буявца3 700 человек читают мой Телеграм-канал про нейросетиСобрал промпты для Claude Code и ChatGPT, разборы ИИ-инструментов и лайфхаки по продвижению бизнеса в одном местеПрисоединиться

Пример 3: калькулятор на Python

Рой радуется, что калькулятор на Python посчитал правильно

Калькулятор часто дают первым учебным заданием. На нём учатся переводить ввод в число, сравнивать значения и выбирать ветку через if.

a = float(input("Первое число: "))
b = float(input("Второе число: "))
op = input("Действие (+, -, *, /): ")

if op == "+":
    print("Результат:", a + b)
elif op == "-":
    print("Результат:", a - b)
elif op == "*":
    print("Результат:", a * b)
elif op == "/":
    if b == 0:
        print("На ноль делить нельзя")
    else:
        print("Результат:", a / b)
else:
    print("Такого действия нет")

Вывод:

Первое число: 7
Второе число: 2
Действие (+, -, *, /): /
Результат: 3.5

float() превращает строку из input() в дробное число. Без неё "7" + "2" дало бы склейку «72». Что значат /, // и % и чем они отличаются, разобрано в статье операторы в Python.

Калькулятор, который не закрывается после первого примера

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

while True:
    op = input("Действие (+, -, *, /) или q для выхода: ")
    if op == "q":
        print("Пока!")
        break
    if op not in ("+", "-", "*", "/"):
        print("Такого действия нет")
        continue
    try:
        a = float(input("Первое число: "))
        b = float(input("Второе число: "))
    except ValueError:
        print("Нужно число, например 12 или 3.5")
        continue

    if op == "+":
        result = a + b
    elif op == "-":
        result = a - b
    elif op == "*":
        result = a * b
    elif b == 0:
        print("На ноль делить нельзя")
        continue
    else:
        result = a / b
    print("Результат:", result)

Вывод:

Действие (+, -, *, /) или q для выхода: *
Первое число: 2.5
Второе число: 4
Результат: 10.0
Действие (+, -, *, /) или q для выхода: /
Первое число: 10
Второе число: 0
На ноль делить нельзя
Действие (+, -, *, /) или q для выхода: +
Первое число: два
Нужно число, например 12 или 3.5
Действие (+, -, *, /) или q для выхода: q
Пока!
  • while True повторяет блок бесконечно, break выходит из цикла, continue сразу начинает новый круг. Подробнее про такой цикл есть в статье цикл while в Python.
  • try и except ValueError ловят ошибку перевода «два» в число, и программа просит ввести число заново вместо аварийного выхода.

Одна особенность дробей пугает новичков. print(0.1 + 0.2) выводит 0.30000000000000004. Калькулятор тут ни при чём: так компьютер хранит дробные числа, объясняет документация Python. Для красивого вывода результат округляют через round().

CheckroiCheckroiПодборка курсов по PyGame13 курсов • 7 школСравните цены, школы, программу и найдите выгодные предложения по обучениюСравнить→

Пример 4: игра «Угадай число»

Компьютер загадывает число от 1 до 100, вы угадываете, программа подсказывает «больше» или «меньше». Здесь появляется модуль random и счётчик попыток.

import random

secret = random.randint(1, 100)
tries = 0

print("Я загадал число от 1 до 100. Угадайте!")
while True:
    guess = int(input("Ваш вариант: "))
    tries += 1
    if guess < secret:
        print("Больше")
    elif guess > secret:
        print("Меньше")
    else:
        print(f"Угадали за {tries} попыток")
        break

Вывод одной партии:

Я загадал число от 1 до 100. Угадайте!
Ваш вариант: 50
Меньше
Ваш вариант: 25
Меньше
Ваш вариант: 12
Больше
Ваш вариант: 18
Меньше
Ваш вариант: 15
Больше
Ваш вариант: 16
Угадали за 6 попыток

random.randint(1, 100) возвращает целое число, где обе границы входят в диапазон. tries += 1 короче записи tries = tries + 1.

Хитрость для игрока: называйте середину оставшегося отрезка, как в партии выше. Так любое число от 1 до 100 находится максимум за 7 попыток, потому что каждый ответ отсекает половину вариантов.

Захочется сделать игру с окном и картинками вместо текста в терминале? Следующий шаг обычно библиотека pygame, вот как установить pygame.

Пример 5: средний балл по списку оценок

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

line = input("Оценки через пробел: ")
marks = [int(x) for x in line.split()]

average = sum(marks) / len(marks)
print("Оценок:", len(marks))
print("Лучшая:", max(marks), "| худшая:", min(marks))
print("Средний балл:", round(average, 2))

Вывод:

Оценки через пробел: 5 4 4 3 5 5 4
Оценок: 7
Лучшая: 5 | худшая: 3
Средний балл: 4.29

Как это работает:

  1. line.split() режет строку по пробелам на кусочки: ['5', '4', '4', ...].
  2. [int(x) for x in ...] переводит каждый кусочек в число. Такая запись называется списковым включением.
  3. sum(), len(), max() и min() считают сумму, длину, максимум и минимум. Про sum() и другие способы сложить список есть отдельная инструкция как суммировать список в Python.

Если ввести оценки через запятую, «5, 4, 4», программа упадёт: split() оставит запятые внутри кусочков, и int('5,') не сработает. Лечится так: line.replace(",", " ").split().

Частые ошибки новичков и что они значат

Клавиатура и лист с заметками о частых ошибках в коде Python

Все сообщения ниже мы получили сами, запустив неверный код. Python пишет причину в последней строке ошибки, читать стоит её.

Что написали Что ответил Python Как исправить
Helloworld("print") NameError: name 'Helloworld' is not defined Сначала имя функции, потом текст в скобках: print("Hello, World!")
Print("Hello, World!") NameError: name 'Print' is not defined. Did you mean: 'print'? Python различает регистр, функция пишется строчными
print "Hello, World!" SyntaxError: Missing parentheses in call to 'print' Добавить скобки. Запись без скобок осталась от Python 2
print("Hello, World!) SyntaxError: unterminated string literal Закрыть кавычку
Кавычки-лапки из Word или с сайта SyntaxError: invalid character '“' (U+201C) Перепечатать кавычки с клавиатуры в редакторе кода
Длинное тире вместо минуса: a – b SyntaxError: invalid character '–' (U+2013) Заменить на обычный дефис-минус
Строка после if без отступа IndentationError: expected an indented block Сдвинуть тело блока на 4 пробела
"2" + 3 TypeError: can only concatenate str (not "int") to str Перевести строку в число через int() или float()
float("7,5") ValueError: could not convert string to float: '7,5' Дробную часть отделять точкой: 7.5

Ошибка из первой строки настолько типична, что запись Helloworld("print") стала у программистов шуткой: в ней функция и текст поменялись местами.

Две ошибки с кавычками и тире появляются при копировании кода из текстовых редакторов и статей. Word и многие сайты автоматически меняют прямые кавычки на типографские, а дефис на тире. Глазом разница почти не видна, а Python такие символы не принимает.

Python 2, откуда пришла запись print без скобок, не поддерживается с 1 января 2020 года. Если учебник показывает такой код, он устарел.

CheckroiCheckroiПодборка курсов для Python-разработчиков81 курс • 31 школаСравните цены, школы, программу и найдите выгодные предложения по обучениюСравнить→ Ваня БуявецКанал основателя Checkroi Вани БуявцаЗабирайте промпты и обучение по нейросетям в моём Телеграм-каналеБольше 3 700 человек уже применяют Claude Code, ChatGPT и другие нейросети в работе, учёбе, бизнесе и жизниПерейти в канал

Что попробовать после этих пяти программ

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

  • В калькулятор добавьте возведение в степень ** и остаток от деления %.
  • В «Угадай число» дайте игроку только 7 попыток, а после них покажите загаданное число.
  • В программу с оценками добавьте проверку, что введены числа от 1 до 5.

Когда эти задачи пойдут легко, переходите к функциям и классам: с них начинается объектно-ориентированное программирование. Если Python рассматриваете как профессию, посмотрите, как стать Python-разработчиком с нуля и чем занимается Python-разработчик.

Где освоить Python системно

Пять программ показывают, как устроен язык, но до первой работы ещё далеко: функции, файлы, библиотеки, Git, базы данных. Системно это дают курсы с проверкой домашних заданий. На checkroi.ru собраны курсы по Python разных школ с ценами и отзывами, ниже первые пять из рейтинга.

КурсШколаСтоимость со скидкойВ рассрочкуДлитель­ностьОбзор курса от Checkroi
Профессия «Python-разработчик»
Перейти на сайт курса
SkillboxSkillbox157 335 ₽5987 ₽/мес.10 месяцевОбзор курса
Fullstack-разработчик на Python
Перейти на сайт курса
НетологияНетология161 200 ₽7125 ₽/мес.21 месяцОбзор курса
ДО Профессия Python-разработчик
Перейти на сайт курса
GeekBrainsGeekBrains149 001 ₽3167 ₽/мес.10 месяцевОбзор курса
Автоматизированное тестирование на Python
Перейти на сайт курса
SkillboxSkillbox118 666 ₽4108 ₽/мес.9 месяцевОбзор курса
Программирование на Python ПРО
Перейти на сайт курса
SkillboxSkillbox119 600 ₽ - 17 месяцевОбзор курса

Больше программ — в полном каталоге курсов по Python

Часто задаваемые вопросы

Как вывести Hello World в Python?

Напишите одну строку print("Hello, World!"), сохраните её в файл с расширением .py и запустите. Функция print() выведет текст из скобок на экран.

Как запустить программу на Python из файла?

Откройте терминал в папке с файлом и выполните python3 hello.py на macOS и Linux или python hello.py на Windows. На Windows с официальным установщиком работает и короткая команда py hello.py.

Почему Python пишет NameError на строке с print?

Чаще всего функция написана с большой буквы (Print) или перепутан порядок, как в Helloworld("print"). Python различает регистр: правильно print("Hello, World!"), сначала имя функции, потом текст в скобках.

Как написать простой калькулятор на Python?

Прочитайте два числа через float(input()), спросите знак действия и выберите ветку через if и elif. Перед делением проверьте, что второе число не ноль. Полный код с выводом есть в примере 3 статьи.

Можно ли запустить код на Python без установки?

Да, в браузере. Например, в Google Colab код пишут в ячейку и запускают кнопкой, ставить Python на компьютер не нужно.

Почему print без скобок выдаёт SyntaxError?

Запись print "текст" осталась от Python 2, который не поддерживается с 1 января 2020 года. В Python 3 print стал функцией, и текст всегда берут в скобки.

Читайте Checkroi первым в Google
Добавьте Checkroi в избранные источники — и наши разборы курсов и обзоры школ будут показываться выше в вашей выдаче Google.
Оставить комментарий
0 комментариев
Форма комментария

Оставьте комментарий

Напишите, что думаете. Нам важно ваше мнение!