Словарь терминов
Ты программист? А ну-ка, скажи что-нибудь по-программистски!
- Блок
(также блок операторов или «блок с отступом», indented block). Один или несколько операторов, отстоящих от начала строки на строго одинаковое число пробелов. Используется в составных операторах (условных, операторах цикла и т. п.) для группировки нескольких действий внутри одной клаузы. Например, если клауза if …: условного оператора имела отступ в 4 пробела, то True-блок операторов, выполняемых при истинности условия, принято делать с отступов в 8 пробелов.
- Булева алгебра (алгебра логики)
Операции над константами True и False (или, что то же самое, над непустыми и пустыми объектами). В Python состоит только из трёх операций — дизъюнкции («ИЛИ»), конъюнкции («И») и отрицания («НЕ»). Результат такой операции — один пустой или непустой объект Python (например, False или True). Если коротко: A and B равно A, если A пусто, иначе B. A or B равно A, если A непусто, иначе B. not A равно True, если A пусто, иначе False.
- Ввод
- Получение текстовых данных от пользователя, чаще всего пользователь вводит текст с клавиатуры.
- Видимость имён
Правило выбора среди глобальных и локальных переменных с одинаковыми именами. При упоминании некоторого имени Python сначала ищет его в списке локальных переменных, а затем — в списке глобальных. Если в какой-то момент существует глобальная и локальная переменные с одинаковыми именами, будет выбрана локальная. Если какое-то имя используется в некоторой функции левой части оператора связывания, оно считается локальным, если явно не сказано иное.
- Вложенные операторы
Не является самостоятельным понятием. Поскольку внутри любого блока, допустим, оператора if …: могут стоять любые операторы, среди них, разумеется, могут быть и составные. Например, ещё один оператор if со своими внутренними блоками и т. д. Выполняются таки конструкции строго так, как написано (проверка условия, выбор клаузы, выполнение блока). Нагромождение многоэтажных вложенных операторов считается плохим стилем программирования.
- Возвращаемое значение (функции)
Объект, которые передаётся в качестве результата вызова функции. Указывается как параметр оператора return. Если в функции нет оператора return, она возвращает None. Возвращаемое значение функции можно не использовать, независимо от того, возвращают ли они None или какой-то другой объект.
- Вывод
- Отображение текстовых данных на экране. Чаще всего соблюдается метафора «рулона бумаги»: вывод производится последовательно, строка за строкой.
- Вызов (функции)
Если написать после имени круглые скобки, Python интерпретирует соответствующий объект как функцию и запустит заданный в ней алгоритм. В скобках через запятую перечисляются параметры функции (если они есть). Вызов функции является выражением, он заменяется на вычисленный ею объект — например round(987.654) заменится на 987 (часто говорят так: функция round() с параметром 987.654 вернёт значение 987).`
- Выражение
Последовательность арифметических или иных операций над объектами Python, результатом интерпретации которой является Python-объект или ошибка. Например, выражение A * 2 + 1 можно вычислить, только если имя A существует, и объект, на который указывает имя A, можно умножать на целое число и складывать с целым числом, в противном случае возникнет ошибка.
- Вычислимая последовательность
тип последовательности, перечисление или индексация элементов которой приводит к созданию новых объектов. Вычислимая последовательность занимает меньше места в памяти, чем хранимая, так как нет необходимости заранее создавать все её элементы. Пример вычислимых последовательностей — диапазоны и строки.
- Глобальная переменная (глобальное имя)
Имя, существующее всё время работы программы, начиная с момента его явного создания и заканчивая моментом его явного удаления. См. также видимость имён.
- Диапазон (range)
Вычислимая последовательность — начальный фрагмент арифметической прогрессии. При создании обязательно указывать только верхнюю границу фрагмента, но можно также задавать начальное значение и шаг, шаг может быть отрицательным. Если в указанных границах нет ни одного элемента прогрессии, range-объект считается пустым. Поддерживает индексацию.
- Именование
То же, что и связывание. Слева от операции связывания должно стоять имя, справа — произвольное Python-выражение. Выражение вычисляется, а полученный объект сопоставляется с именем, например B = A * 2 + 1 (при условии, что имя A уже связывает числовой объект). Иногда говорят, что после именования имя указывает на объект.
- Имя (переменная)
Способ обратиться к объекту. Например, после команды A = 42 вместо 42 в арифметических выражениях можно использовать A. У одного объекта может быть сколько угодно имён. Имя должно начинаться на букву или символ "_" и может содержать ещё буквы и "_", а также цифры.
- Индексация
возможность получить N-й по порядку элемент последовательности с помощью операции Последовательность[N]. Индексируемыми являются, например, списки (list), кортежи (tuple) и диапазоны (range). Нумерация элементов в последовательности начинается с 0. Наибольший индекс элемента последовательности длины N равен N - 1. Если индекс отрицателен, индексация производится от конца последовательности; например, Последовательность[-1] — это последний элемент, Последовательность[-2] — предпоследний и т. д.
- Интерпретатор
- Компьютерная программа, по очереди выполняющая операторы языка программирования. Если очередную команду нельзя интерпретировать как оператор, выводится ошибка.
- Каноническая схема цикла
Мнемоническая структура, которой в подавляющем большинстве случаев нужно уподоблять циклические конструкции в программе. Каноническая схема состоит из четырёх частей — инициализации, проверки условия, тела и изменения. Пропуск любой из этих частей в программе может повлечь за собой ошибку алгоритма.
- Клауза
Часть составного оператора. Некоторые клаузы обязательно присутствуют в составных операторах (например, if или while), а некоторые (например, else или elif) — опциональны.
- Командная строка (REPL, read-eval-print loop)
- Текстовый диалог интерпретатора и пользователя (программиста). Прямоугольное окно интерпретатора — это история команд, ввода и вывода, последняя непустая строка используется для ввода очередной команды.
- Константа
Способ явного конструирования объекта. Например, константа 7 конструирует целочисленный объект с числом 7, константа "QKRQ" — строковый объект из четырёх букв.
- Кортеж (tuple)
Неизменяемая хранимая последовательность произвольных объектов. Поддерживает индексацию и секционирование.
- Логическое выражение
Вообще говоря, любое выражение Python. Оно интерпретируется как логическое просто по факту участия в условном операторе, операторе цикла и подобным им. Если результатом вычисления выражения является т. н. пустой объект (обычно это константа False), этот результат интерпретируется как «ЛОЖЬ», а если непустой (например, True) — как «ИСТИНА».
- Локальная переменная (локальное имя)
Имя, существующее только на время работы некоторой функции. Такое имя создаётся внутри либо в момент вызова (формальный параметр), либо в процессе её работы. При выходе из функций локальные имена удаляются. См. также видимость имён.
- Метод
Особого рода функция, которая отличается от обычной функции тем, что всегда применяется к данному конкретному объекту. Говорят, что метод встроен в объект. Вызов метода требует указания перед ним самого объекта, например, если s = "Python", строка, то можно вызывать метод .upper() объекта s так: s.upper(). Этот вызов вернёт новую строку "UPPER".
- Объект
- Любая сущность, которой манипулирует интерпретатор Python. Мы знаем числовые объекты (минимум двух видов: целые и вещественные), строковые объекты, объекты-функции и т. п.
- Оператор
- Команда языка программирования.
- Параметры (функции)
Исходные данные, на основании которых функция вычисляет возвращаемое значение. Указываются через запятую в круглых скобках при вызове объекта-функции. Параметрами могут быть любые выражения: сначала эти выражения вычисляются, формируется список объектов, по одному на параметр, который передаётся функции. У некоторых функций фиксированное число параметров (например, ни одного, один, два и т. п.), у некоторых — изменяемое (например, у функции round() их один или два), у некоторых — любое. См. также формальные параметры.
- Последовательность
свойство некоторых типов данных в Python предоставлять программисту сразу несколько объектов в одном. Объекты из последовательности всегда можно перечислить — например, в цикле for или при множественном связывании. Многие последовательности поддерживают индексацию — доступ к конкретному элементу последовательность по его номеру в ней. В этом случае они скорее всего поддерживают и секционирование — выделение подпоследовательности.
- Пустой объект
Объект, который интерпретируется как False, когда оказывается в роли логического выражения. Большинство объектов — непустые и интерпретируются как True. Пустые объекты — 0, 0.0, "", [], None и другие
- Расширенный условный оператор
Оператор, в котором после клаузы if условие: следует клауза elseif условие-2: и, возможно, ещё несколько клауз elseif …: и клауза else:. В этом случае сначала проверяется условие, если оно ложно — условие-2 и т. д. Если какое-то из условий истинно, выполняется соответствующий клаузе блок (и больше условий не проверяется и блоков в этом операторе не выполняется). Если все условия ложны, но присутствует клауза else:, выполняется соответствующий ей блок.
- Связывание
Сопоставление имени и объекта. Операцию связывания "=" нередко называют операцией присваивания, но для Python это, строго говоря, неверно. Тип объектов при связывании не проверяется, одним и тем же именем можно в разное время называть совершенно разные объекты.
- Секционирование
Взятие подпоследовательности вида последовательность[начало:конец] или последовательность[начало:конец:шаг]. В первом случае возвращается последовательность того же типа, состоящая из всех элементов исходной последовательности, начиная с элемента № начало и до элемента № конец, не включая его. Во втором случае возвращается последовательность, состоящая из элементов последовательность[начало], последовательность[начало + шаг], последовательность[начало + шаг*2] и т. д., пока начало + шаг*n меньше, чем конец. Шаг может быть отрицательным. Начало и конец могут выходить за границы последовательности и не соответствовать направлению шага — в этих случаях возвращается пустая последовательность.
- Символ
- В Python — одна буква, знак препинания, цифра или иной значок, выводимый на экран, а также некоторые специальные «непечатные» (non-printable) знаки, вывод которых приводит к изменению состояния экрана (например, перевод строки).
- Список
В Python — изменяемая хранимая последовательность. Поддерживает индексацию и секционирование, а также, добавление, вставку и удаление элементов. Также можно заменять целые секции списка. В случае изменения секции с шагом 1, замена может быть любой длины, а если шаг не единичный, длина замены должна совпадать с длиной заменяемой секции.
- Строка
Тип данных Python для хранения символов. Несмотря на то, что является последовательностью и хранит все символы, из которых состоит, операция индексации строки возвращает не символ (такого типа данных в Python нет), а строку единичной длины. Например, если s = "WSXEDC", то s[3] == "E". Некоторые операции работают не только с элементами строки, но и с подстроками произвольной длины. Например, выражение "tho" in "Python" истинно.
- Условный оператор
Способ выполнить или не выполнить некоторые другие операторы в программе в зависимости от свойств объектов. Условный оператор состоит из логического выражения и как минимум одного блока операторов — True-блока. Если значение логического выражения истинно, выполняется True-блок операторов. Если ложно — True-блок не выполняется. Условный оператор может включать в себя клаузу else:, после которой следует ещё один блок операторов — False-блок. Этот блок выполняется только если значение логического выражения ложно.
- Фактические параметры
То же, что и параметры функции.
- Формальные параметры (функции)
Имена переменных внутри функции, которыми называются переданные ей фактические параметры. Как и локальные переменные, формальные параметры связывают объекты только до выхода из функции, после чего прекращают существование.
- Функция
Объект Python, который используется для обозначения некоторого заранее написанного алгоритма. Чтобы выполнить этот алгоритм, функцию надо вызвать. Например, max — это имя некоторого объекта-функции Python, а max((4 - 3) * 2, 28 // 4, 1) — вызов этой функции с тремя параметрами — 2, 7, и 1, который вернёт число 7.
- Хранимая последовательность
тип последовательности, каждый элемент которой связывает какой-либо объект Python так же, как это происходит при именовании объектов. Пример хранимых последовательностей — списки и кортежи.
- Цикл
Поочерёдная проверка того, что некоторые данные соответствуют заданным критериям (это соответствие называется условием цикла) и выполнение заданного блока операторов (называемого телом цикла). Если проверка вернула «истину» (непустой объект), выполняется блок операторов и следующая проверка. Если проверка вернула ложь (пустой объект), работа цикла завершается.
- Цикл по последовательности (for)
Вариант цикла, в котором элементы последовательности поочерёдно связываются некоторым именем, после чего каждый раз выполняется заданный блок операторов. Цикл повторяется столько раз, сколько элементов в последовательности, а затем завершается.