Python уроки для начинающих: основы программирования - ProgKids
← Все статьи журнала

Python уроки для начинающих: основы программирования

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

Введение в Python

Python - высокоуровневый интерпретируемый язык программирования общего назначения. Он был создан в 1991 году Гвидо ван Россумом и получил широкое распространение благодаря простому и понятному синтаксису.

Среди основных преимуществ Python:

  • Простой и читаемый код за счет использования отступов вместо скобок
  • Динамическая типизация - переменные сами определяют свой тип
  • Мультипарадигменность - поддержка ООП, структурного и функционального программирования
  • Большое количество библиотек для решения разнообразных задач
  • Кроссплатформенность - работает на Linux, Windows, macOS и др.

Python широко применяется в веб-разработке, научных вычислениях, машинном обучении, анализе данных, разработке ПО и многих других областях. Это один из самых востребованных языков среди разработчиков и ученых.

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

Пример программы "Hello World"

Начнем с традиционной первой программы "Hello World", которая выводит приветствие в консоль:

print("Hello World!") 

Чтобы запустить эту программу:

  1. Сохраните код в файл example.py
  2. Откройте терминал
  3. Перейдите в папку с файлом
  4. Введите python example.py

Вы увидите "Hello World!" в консоли. Эта программа демонстрирует, как выводить текст с помощью функции print(). Теперь давайте разберемся с базовым синтаксисом Python подробнее.

Установка Python

Чтобы начать писать код на Python, нужно установить интерпретатор этого языка. Рекомендуется использовать последнюю стабильную версию с официального сайта python.org.

Процесс установки прост и занимает всего пару минут:

  • Скачать установщик для вашей ОС (Windows, Linux, macOS)
  • Запустить его и следовать инструкциям (next, next, finish)
  • Отметить галочку Add Python to PATH (добавить в переменную окружения)
  • После установки проверить, открыв терминал и набрав python --version

Также рекомендуется установить среду разработки, например бесплатную PyCharm Community Edition. Это облегчит написание и отладку кода, автодополнение и подсветку синтаксиса.

Популярные IDE для Python:

  • PyCharm
  • Visual Studio Code
  • Spyder
  • Jupyter Notebook

Для удобства работы стоит настроить виртуальное окружение (virtualenv) и установить нужные библиотеки именно для данного проекта.

Переменные

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

Чтобы создать переменную, нужно выполнить присваивание:

имя_переменной = значение

Например:

message = "Привет, Мир!"  # строка
age = 25                 # целое число  
price = 199.99           # число с плавающей точкой

В Python переменные имеют динамическую типизацию - их тип определяется автоматически при присваивании значения и может меняться.

Одну и ту же переменную можно использовать для хранения данных разных типов:

message = "текст" 
message = 15
message = 15.7

Такой подход упрощает работу с данными, но требует внимания при написании кода.

Типы данных

Рассмотрим основные типы данных в Python:

  • Числа: целые int, с плавающей точкой float, комплексные complex
a = 5       # int
b = 5.5     # float
c = 5 + 3j  # complex 
  • Строки str - для хранения текстовой информации
text = "Hello world" 
  • Списки list - изменяемые упорядоченные коллекции элементов
numbers = [1, 2, 3, 4, 5]
  • Кортежи tuple - неизменяемые упорядоченные коллекции
colors = ("red", "green", "blue")  
  • Словари dict - коллекции вида ключ-значение
user = {
  "name": "John",
  "age": 30,
  "city": "New York"
}
  • Множества set - коллекции уникальных элементов
s = {1, 3, 5}
  • Логический bool - для хранения логических значений True/False
is_published = False

Для проверки типов переменных используются функции type() и isinstance():

num = 5
print(type(num)) # <class 'int'> 

print(isinstance(num, int)) # True

При необходимости можно явно конвертировать тип с помощью int(), str(), list() и т.д.

Условия

Условные операторы if, elif и else в Python позволяют выполнять разные действия в зависимости от некоторых условий:

age = 15

if age < 18:
  print("Доступ запрещен") 
elif age == 18:
  print("Поздравляем с совершеннолетием!")   
else:
  print("Доступ разрешен")

В условиях используются операторы сравнения: >, <, ==, !=, >=, <= и логические операторы and, or, not.

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

Циклы

Циклы нужны для многократного повторения одних и тех же действий.

Цикл while выполняет блок кода до тех пор, пока условие истинно:

i = 1
while i <= 5:
  print(i)  
  i = i + 1

Цикл for перебирает элементы коллекции, например списка:

fruits = ["яблоко", "банан", "киви"]

for fruit in fruits:
  print(fruit) 

Также в циклах можно использовать операторы break (досрочное завершение) и continue (переход к следующей итерации).

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

Функции в Python

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

Чтобы объявить функцию в Python, используется ключевое слово def, за которым указывается имя функции и список параметров в круглых скобках:

def print_message(name):
  print("Привет, " + name + "!")

print_message("Антон")  
# выведет "Привет, Антон!"

Функция может возвращать результат с помощью оператора return:

def sum(a, b):
  result = a + b
  return result

x = sum(5, 10) # x будет 15

Рассмотрим подробнее разные типы аргументов функций.

Аргументы функций

Функции могут принимать:

  • Позиционные аргументы - передаются в порядке объявления в функции:
def sum(a, b):
  return a + b
  • Именованные аргументы - передаются с указанием имени:
def print_welcome(name, age):
  print(f"Привет, {name}! Тебе {age} лет.")
  
print_welcome(age=25, name="Антон") 
  • Аргументы по умолчанию - имеют значение по умолчанию:
def say(message, count=1):
  for i in range(count):
    print(message)

say("Привет!")
say("Привет!", 5)  

Комбинируя разные типы аргументов, можно гибко настраивать интерфейс функции.

Документирование функций

Хорошим тоном считается документировать функции с помощью комментариев (docstring) и аннотаций типов:

def sum(a: int, b: int) -> int:
  """Возвращает сумму двух чисел"""
  return a + b

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

Lambda функции

Lambda функции (анонимные) позволяют создавать небольшие однострочные функции "на лету":

square = lambda x: x ** 2

print(square(5)) # 25

Полезны для передачи простых функций в качестве аргументов в другие функции.

Рекурсивные функции

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

Но рекурсивные функции требуют условия остановки, иначе произойдёт переполнение стека:

def factorial(n):
  if n == 1: 
    return 1 # условие остановки    
  else:
    return n * factorial(n-1) # рекурсивный вызов

Факториал n! вычисляется как произведение чисел от 1 до n.

Таким образом рекурсия - мощный приём, требующий аккуратности при использовании.

Модули и пакеты

Чтобы разбить кодовую базу на части и повторно использовать, в Python предусмотрены модули и пакеты.

Модуль - это файл с расширением .py, содержащий функции, классы и переменные.

Импортировать модуль можно так:

import math
print(math.factorial(5)) # 120

Из модуля можно импортировать отдельные объекты:

from math import factorial, sqrt
print(factorial(5))  
print(sqrt(25))

Пакет - это папка, содержащая модули и файл __init__.py.

Пакеты позволяют структурировать код по функциональности:

project/
|- models.py
|- views.py 
|- __init__.py

Импортировать конкретный модуль из пакета можно так:

from project.models import User 

Рассмотрим некоторые полезные встроенные и сторонние модули.

Стандартная библиотека

Python поставляется с большим набором модулей для реш

Related posts

Еще можно почитать

Курсы для детей

Progkids обратная связь

Записаться на бесплатное занятие проще простого

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

Оставить заявку

  • Afghanistan+93
  • Albania+355
  • Algeria+213
  • American Samoa+1
  • Andorra+376
  • Angola+244
  • Anguilla+1
  • Antigua & Barbuda+1
  • Argentina+54
  • Armenia+374
  • Aruba+297
  • Ascension Island+247
  • Australia+61
  • Austria+43
  • Azerbaijan+994
  • Bahamas+1
  • Bahrain+973
  • Bangladesh+880
  • Barbados+1
  • Belarus+375
  • Belgium+32
  • Belize+501
  • Benin+229
  • Bermuda+1
  • Bhutan+975
  • Bolivia+591
  • Bosnia & Herzegovina+387
  • Botswana+267
  • Brazil+55
  • British Indian Ocean Territory+246
  • British Virgin Islands+1
  • Brunei+673
  • Bulgaria+359
  • Burkina Faso+226
  • Burundi+257
  • Cambodia+855
  • Cameroon+237
  • Canada+1
  • Cape Verde+238
  • Caribbean Netherlands+599
  • Cayman Islands+1
  • Central African Republic+236
  • Chad+235
  • Chile+56
  • China+86
  • Christmas Island+61
  • Cocos (Keeling) Islands+61
  • Colombia+57
  • Comoros+269
  • Congo - Brazzaville+242
  • Congo - Kinshasa+243
  • Cook Islands+682
  • Costa Rica+506
  • Croatia+385
  • Cuba+53
  • Curaçao+599
  • Cyprus+357
  • Czech Republic+420
  • Côte d’Ivoire+225
  • Denmark+45
  • Djibouti+253
  • Dominica+1
  • Dominican Republic+1
  • Ecuador+593
  • Egypt+20
  • El Salvador+503
  • Equatorial Guinea+240
  • Eritrea+291
  • Estonia+372
  • Eswatini+268
  • Ethiopia+251
  • Falkland Islands+500
  • Faroe Islands+298
  • Fiji+679
  • Finland+358
  • France+33
  • French Guiana+594
  • French Polynesia+689
  • Gabon+241
  • Gambia+220
  • Georgia+995
  • Germany+49
  • Ghana+233
  • Gibraltar+350
  • Greece+30
  • Greenland+299
  • Grenada+1
  • Guadeloupe+590
  • Guam+1
  • Guatemala+502
  • Guernsey+44
  • Guinea+224
  • Guinea-Bissau+245
  • Guyana+592
  • Haiti+509
  • Honduras+504
  • Hong Kong+852
  • Hungary+36
  • Iceland+354
  • India+91
  • Indonesia+62
  • Iran+98
  • Iraq+964
  • Ireland+353
  • Isle of Man+44
  • Israel+972
  • Italy+39
  • Jamaica+1
  • Japan+81
  • Jersey+44
  • Jordan+962
  • Kazakhstan+7
  • Kenya+254
  • Kiribati+686
  • Kosovo+383
  • Kuwait+965
  • Kyrgyzstan+996
  • Laos+856
  • Latvia+371
  • Lebanon+961
  • Lesotho+266
  • Liberia+231
  • Libya+218
  • Liechtenstein+423
  • Lithuania+370
  • Luxembourg+352
  • Macau+853
  • Madagascar+261
  • Malawi+265
  • Malaysia+60
  • Maldives+960
  • Mali+223
  • Malta+356
  • Marshall Islands+692
  • Martinique+596
  • Mauritania+222
  • Mauritius+230
  • Mayotte+262
  • Mexico+52
  • Micronesia+691
  • Moldova+373
  • Monaco+377
  • Mongolia+976
  • Montenegro+382
  • Montserrat+1
  • Morocco+212
  • Mozambique+258
  • Myanmar (Burma)+95
  • Namibia+264
  • Nauru+674
  • Nepal+977
  • Netherlands+31
  • New Caledonia+687
  • New Zealand+64
  • Nicaragua+505
  • Niger+227
  • Nigeria+234
  • Niue+683
  • Norfolk Island+672
  • North Korea+850
  • North Macedonia+389
  • Northern Mariana Islands+1
  • Norway+47
  • Oman+968
  • Pakistan+92
  • Palau+680
  • Palestine+970
  • Panama+507
  • Papua New Guinea+675
  • Paraguay+595
  • Peru+51
  • Philippines+63
  • Poland+48
  • Portugal+351
  • Puerto Rico+1
  • Qatar+974
  • Romania+40
  • Russia+7
  • Rwanda+250
  • Réunion+262
  • Samoa+685
  • San Marino+378
  • Saudi Arabia+966
  • Senegal+221
  • Serbia+381
  • Seychelles+248
  • Sierra Leone+232
  • Singapore+65
  • Sint Maarten+1
  • Slovakia+421
  • Slovenia+386
  • Solomon Islands+677
  • Somalia+252
  • South Africa+27
  • South Korea+82
  • South Sudan+211
  • Spain+34
  • Sri Lanka+94
  • St Barthélemy+590
  • St Helena+290
  • St Kitts & Nevis+1
  • St Lucia+1
  • St Martin+590
  • St Pierre & Miquelon+508
  • St Vincent & Grenadines+1
  • Sudan+249
  • Suriname+597
  • Svalbard & Jan Mayen+47
  • Sweden+46
  • Switzerland+41
  • Syria+963
  • São Tomé & Príncipe+239
  • Taiwan+886
  • Tajikistan+992
  • Tanzania+255
  • Thailand+66
  • Timor-Leste+670
  • Togo+228
  • Tokelau+690
  • Tonga+676
  • Trinidad & Tobago+1
  • Tunisia+216
  • Turkey+90
  • Turkmenistan+993
  • Turks & Caicos Islands+1
  • Tuvalu+688
  • US Virgin Islands+1
  • Uganda+256
  • Ukraine+380
  • United Arab Emirates+971
  • United Kingdom+44
  • United States+1
  • Uruguay+598
  • Uzbekistan+998
  • Vanuatu+678
  • Vatican City+39
  • Venezuela+58
  • Vietnam+84
  • Wallis & Futuna+681
  • Western Sahara+212
  • Yemen+967
  • Zambia+260
  • Zimbabwe+263
  • Åland Islands+358
ok image
Ваша заявка отправлена. Скоро мы свяжемся с Вами
Ошибка при отправке формы