1. Разжигание аппетита – документация Python 3.10
Документация Python неофициальный перевод

1. Разжигаем аппетитWhetting Your Appetite

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

Профессиональному разработчику, возможно, приходится работать с несколькими библиотеками на C/C++/Java, но обычный цикл «написание/компиляция/тестирование/перекомпиляция» может показаться слишком медленным. Возможно, требуется написать набор тестов для такой библиотеки, и написание тестового кода оказывается утомительной задачей. Или же написана программа, которая могла бы использовать язык расширений, но не хочется разрабатывать и реализовывать целый новый язык для своего приложения.

Python – это именно то, что нужно.

Для некоторых из этих задач можно написать сценарий командной оболочки Unix или пакетный файл Windows, но сценарии оболочки лучше всего подходят для перемещения файлов и изменения текстовых данных, а не для приложений с графическим интерфейсом или игр. Можно написать программу на C/C++/Java, но разработка даже чернового варианта может занять много времени. Python проще в использовании, доступен на Windows, macOS и Unix, и поможет выполнить работу быстрее.

Python прост в использовании, но это настоящий язык программирования, предоставляющий гораздо больше структуры и поддержки для больших программ, чем могут предложить сценарии оболочки или пакетные файлы. С другой стороны, Python также обеспечивает гораздо более тщательную проверку ошибок, чем C, и, являясь языком сверхвысокого уровня, имеет встроенные типы данных высокого уровня, такие как гибкие массивы и словари. Благодаря более общим типам данных Python применим к гораздо более широкой области задач, чем Awk или даже Perl, и при этом многие вещи в Python делаются не менее просто, чем в этих языках.

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

Python – интерпретируемый язык, что может сэкономить значительное время при разработке программ, поскольку не требуется компиляция и компоновка. Интерпретатор можно использовать в интерактивном режиме, что позволяет легко экспериментировать с возможностями языка, писать одноразовые программы или тестировать функции при разработке «снизу вверх». Он также пригодится как настольный калькулятор.

Python позволяет писать программы компактно и читаемо. Программы на Python обычно значительно короче эквивалентных программ на C, C++ или Java по нескольким причинам:

  • типы данных высокого уровня позволяют выражать сложные операции в одном операторе;

  • группировка операторов выполняется с помощью отступов, а не скобок начала и конца;

  • не требуется объявления переменных или аргументов.

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

Кстати, язык назван в честь шоу BBC «Летающий цирк Монти Пайтона» и не имеет никакого отношения к рептилиям. Ссылаться в документации на скетчи Монти Пайтона не только разрешается, но и поощряется!

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

В следующей главе объясняются механизмы использования интерпретатора. Это довольно приземлённая информация, но необходимая для опробования примеров, приведённых далее.

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