Python — интерпретируемый язык программирования. Программа выполняется интерпретатором построчно. Функция print() выводит данные на экран. Программа сохраняется в файл с расширением .py.
Написать программу, которая выводит текст «Привет, Мир!».
print("Привет, Мир!")
Сохраните код в файл hello.py. Запустите в терминале командой:
python3 hello.py
Измените текст на «Привет, [ваше имя]!» и запустите снова.
Переменная — именованная ячейка памяти. Python имеет динамическую типизацию. Основные типы:
int — целые числаfloat — дробные числаstr — строкиbool — логические значения (True/False)# Целое число age = 15 # Дробное число height = 1.75 # Строка name = "Анна" # Логическое значение is_student = True # Проверка типа print(type(age)) #print(type(height)) #
Операторы позволяют выполнять действия над данными.
Арифметические:+, -, *, /// — целочисленное деление% — остаток от деления** — возведение в степень==, !=, <, >and, or, not
# Математика
a = 10
b = 3
print(a + b) # 13
print(a % b) # 1
print(a ** 2) # 100
# Логика
x = 5
print(x > 3 and x < 10) # True
print(not False) # True
Оператор if выполняет блок кода, если условие истинно. Используются elif и else для альтернативных ветвей. Отступы (4 пробела) определяют принадлежность строк к блоку.
age = 16
if age >= 18:
print("Доступ разрешён")
else:
print("Доступ запрещён")
score = 85
if score >= 90:
grade = "A"
elif score >= 80:
grade = "B"
elif score >= 70:
grade = "C"
else:
grade = "F"
print("Оценка:", grade)
for — перебирает элементы последовательности. while — выполняется, пока условие истинно. range(n) генерирует числа от 0 до n-1.
# Цикл for
for i in range(1, 6):
print(i)
# Сумма чисел
total = 0
for i in range(1, 11):
total += i
print("Сумма:", total)
# Цикл while
count = 0
while count < 3:
print("Счёт:", count)
count += 1
Строка — упорядоченная последовательность символов. Список — изменяемая коллекция. Индексация: list[0] — первый элемент, list[-1] — последний. Срезы: list[1:4].
# Строки
text = "привет"
print(text[::-1]) # переворот
print(text.upper()) # ПРИВЕТ
print("р" in text) # True
# Списки
fruits = ["яблоко", "банан", "груша"]
fruits.append("апельсин")
fruits.remove("банан")
print(len(fruits)) # 3
for fruit in fruits:
print("Люблю", fruit)
Функция — именованный блок кода. Определяется через def. Может принимать аргументы и возвращать значение с помощью return.
def square(x):
return x ** 2
print(square(5)) # 25
def greet(name):
print(f"Привет, {name}!")
greet("Мария")
def is_even(n):
return n % 2 == 0
print(is_even(4)) # True
Файл открывается с помощью open(). Режимы: 'r' — чтение, 'w' — запись, 'a' — добавление. Конструкция with гарантирует закрытие файла.
# Запись в файл
with open("diary.txt", "w") as f:
f.write("Сегодня я выучил Python!\n")
f.write("Это было интересно.\n")
# Чтение из файла
with open("diary.txt", "r") as f:
content = f.read()
print(content)
# Построчное чтение
with open("diary.txt", "r") as f:
for line in f:
print("Строка:", line.strip())
Исключение — ошибка во время выполнения. Блок try содержит код, который может вызвать ошибку. Блок except перехватывает и обрабатывает её.
try:
num = int(input("Введите число: "))
result = 10 / num
print("Результат:", result)
except ValueError:
print("Ошибка: введено не число")
except ZeroDivisionError:
print("Ошибка: деление на ноль")
except Exception as e:
print(f"Неизвестная ошибка: {e}")
Класс — шаблон для создания объектов. __init__ — конструктор. self — ссылка на текущий объект. Атрибуты — данные, методы — функции объекта.
class Dog:
def __init__(self, name, breed):
self.name = name
self.breed = breed
self.hunger = 50 # 0 — сыт, 100 — голоден
def bark(self):
print(f"{self.name} говорит: Гав!")
def feed(self):
if self.hunger > 0:
self.hunger -= 10
print(f"{self.name} поел. Голод: {self.hunger}")
else:
print(f"{self.name} не голоден")
# Создание объекта
my_dog = Dog("Бобик", "дворняга")
my_dog.bark()
my_dog.feed()
Модули расширяют возможности Python. Устанавливаются через pip install имя_модуля. Подключаются с помощью import.
import math
print(math.sqrt(25)) # 5.0
print(math.pi) # 3.1415...
import random
print(random.randint(1, 10))
import datetime
print(datetime.datetime.now())
Откройте терминал и выполните:
pip install pygame
pip install requests
import pygame
pygame.init()
print("Pygame успешно подключён!")
Pygame — библиотека для создания 2D-игр. Использует графику, события, циклы и классы. Требует установки: pip install pygame.
import pygame
import random
import sys
# Инициализация
pygame.init()
WIDTH, HEIGHT = 800, 600
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("Поймай шарик")
clock = pygame.time.Clock()
# Цвета
RED = (255, 0, 0)
BLUE = (0, 0, 255)
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
# Класс шарика
class Ball:
def __init__(self):
self.radius = 30
self.x = random.randint(self.radius, WIDTH - self.radius)
self.y = random.randint(self.radius, HEIGHT - self.radius)
self.color = RED
def draw(self):
pygame.draw.circle(screen, self.color, (self.x, self.y), self.radius)
def is_clicked(self, pos):
x, y = pos
distance = (x - self.x)**2 + (y - self.y)**2
return distance <= self.radius**2
# Игровые переменные
ball = Ball()
score = 0
font = pygame.font.SysFont(None, 48)
# Основной цикл
while True:
screen.fill(WHITE)
# Отрисовка
ball.draw()
score_text = font.render(f"Очки: {score}", True, BLACK)
screen.blit(score_text, (10, 10))
# Обработка событий
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type == pygame.MOUSEBUTTONDOWN:
if ball.is_clicked(event.pos):
score += 1
ball = Ball() # Новый шарик
pygame.display.flip()
clock.tick(60)
Кликайте по шарику мышью. Каждый клик прибавляет 1 очко и создаёт новый шарик в случайном месте.