ЭВТЮМИЯ

Работа с CSV-файлами

Основы Python | 10.02.2025
40 0

В реальной жизни данные редко хранятся в виде сплошного текста. Чаще всего они представляют собой структурированные данные, например, таблицы или словари, поэтому для их эффективного хранения требуется не просто текстовый формат .txt, а более специализированные форматы, устанавливающие строгие правила для организации данных. Например, для хранения табличных данных часто используются CSV-файлы (от англ. Comma-Separated Values – значения, разделённые запятыми).

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

Ошибки и исключения

Основы Python | 19.01.2025
21 0

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

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

Например, выведем сообщение на экран, но пропустим закрывающую скобку при вызове функции print():

print("Эта инструкция написана не очень правильно"

Запустив этот код, вы увидите примерно такое сообщение о синтаксической ошибке:

Traceback (most recent call last):
  File "/home/irina/projects/task.py", line 2
    print("Эта инструкция написана не очень правильно"
         ^
SyntaxError: '(' was never closed

Циклы

Основы Python | 15.01.2025
30 0

В процессе разработки программ часто возникает необходимость многократно выполнять одни те же действия. Например, представим, что мы управляем роботом на клетчатом поле, и за одно действие можем переместить его только на одну клетку. Чтобы сдвинуть его на 3 клетки, нам придется 3 раза повторить команду перемещения:

step = 0
step += 1
print(f"Шагов сделано: {step}") 
# Вывод: Шагов сделано: 1
step += 1
print(f"Шагов сделано: {step}")
# Вывод: Шагов сделано: 2
step += 1
print(f"Шагов сделано: {step}")
# Вывод: Шагов сделано: 3

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

Ветвление

Основы Python | 11.01.2025
20 0

Ветвление – это фундаментальный механизм в программировании, позволяющий выполнять различные действия в зависимости от условия. Это похоже на принятие решений в реальной жизни: «Если я наберу 100 очков, то перейду на следующий уровень. Иначе мне придётся сыграть ещё раз».

В Python ветвление реализуется с помощью условных операторов if (с англ. – если), elif (от англ. else if – иначе если) и else (с англ. – иначе):

if условие_1:
    блок_кода_1
elif условие_2:
    блок_кода_2
else:
    блок_кода_3

Каждое условие – это логическое выражение, результат которого может быть либо истинным (True), либо ложным (False). Если первое условие в if истинно, то выполняется соответствующий блок кода, иначе – проверяется следующее условие в elif и так далее. Если все условия оказались ложными, то выполняется блок кода else.

Принадлежность кода к блоку if, elif или else определяется обязательным отступом (обычно 4 пробела). Отсутствие или неправильный отступ приведет к ошибке IndentationError.

Логические выражения и операторы

Основы Python | 06.01.2025
18 0

Логическими выражениями называют утверждения, которые могут быть оценены как истинные или ложные. Например, выражение «Идёт дождь» в зависимости от погоды будет истинным или ложным. Так и в Python результатом вычисления любого логического выражения всегда будет значение логического типа данных True или False.

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

Любой объект в Python обладает определенным логическим значением, которое можно получить с помощью встроенной функции bool() (от англ. boolean – булев (логический) тип данных).

Функция bool() возвращает True, если объект считается истинным, и False, если объект считается ложным.

К истинным значениям относятся любые непустые объекты и ненулевые числа:

print(bool("В саду распустились розы")) 
# Вывод: True
print(bool({"Имя": "Копатыч", "Место жительства": "Долина Смешариков"})) 
# Вывод: True
print(bool(256)) 
# Вывод: True

Ввод и вывод данных

Основы Python | 03.01.2025
44 0

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

Функция print() – одна из наиболее используемых функций в Python, позволяющая выводить различные объекты на экран.

По умолчанию все объекты разделяются пробелом, а в конце добавляется символ переноса строки (\n), поэтому каждый следующий вызов функции print() выводит данные на новой строке. Однако такое поведение можно изменить с помощью параметров sep (от англ. separator – разделитель) и end (c англ. – конец).

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

print(1, 2, 3, sep=" | ") 
# Вывод: 1 | 2 | 3
print("Ручка", "Карандаш", "Линейка", sep="_") 
# Вывод: Ручка_Карандаш_Линейка
print("x", "y", "z", sep="\t") 
# Вывод: x    y    z

Экранирование и кодирование символов

Основы Python | 30.12.2024
30 0

Программирование на Python требует внимания ко многим деталям, особенно когда речь идет о работе с текстом.

В Python некоторые последовательности символов, начинающиеся с обратного слэша (\), интерпретируются особым образом. Такие последовательности называют управляющими символами или escape-последовательностями. Они необходимы для задания специфичных действий в тексте, таких как перенос строки, табуляция или возврат каретки.

Символ переноса строки (\n) позволяет вывести на экран несколько строк текста без использования дополнительных вызовов функции print():

poem = "Духовной жаждою томим,\nВ пустыне мрачной я влачился."
print(poem)

Здесь символ \n указывает Python, что после "Духовной жаждою томим," следует перейти на новую строку:

Основы работы со строками

Основы Python | 25.12.2024
19 0

Строки в Python представлены типом str (от англ. string – строка) и представляют собой упорядоченные последовательности символов, заключённые в кавычки. Строки используются для хранения и обработки текстовой информации. Будь то имена, адреса, тексты книг или любые другие данные, которые можно представить в виде текста, в Python они обычно обрабатываются как строки.

Для создания строковой переменной достаточно заключить любой текст в одинарные (') или в двойные (") кавычки:

message = 'Что на ужин?'
reply_message = ""  # Пустая строка – тоже строка

Математические функции

Основы Python | 20.12.2024
25 0

Помимо базовых арифметических операций, Python предлагает набор встроенных функций, которые помогают работать с числами – это функция abs(), возвращающая модуль числа, функция round() для округления чисел, и функция pow(), эквивалентная оператору возведения в степень.

Функция abs() (от англ. absolute — абсолютный) позволяет получить абсолютное значение числа, то есть его модуль. В математике модуль представляет собой расстояние на числовой прямой от этого числа до 0. И так как расстояние не может быть отрицательным, то можно сказать, что модулем числа является это же число, но без учёта знака.

Функция abs() очень проста в использовании и в любом случае возвращает положительное значение этого же числа:

print(abs(5))
# Вывод: 5
print(abs(-10))
# Вывод: 10
print(abs(-3.14))
# Вывод: 3.14

Арифметические операции

Основы Python | 17.12.2024
35 0

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

Арифметические операции в Python выполняются как в математике, то есть сначала выполняется возведение в степень (**), затем – умножение (*) и деление (/// и %), и в последнюю очередь – сложение (+) и вычитание (-). При этом операторы, имеющие одинаковый приоритет, выполняются слева направо.

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

print(2 + 2 * 2)  
# Вывод: 6 
print((2 + 2) * 2) 
# Вывод: 8