Лекция 3 Введение в язык Web- программирования высокого уровня
Python Python – это многоцелевой объектно- ориентированный язык программирования, который зачастую используется для создания сценариев.
Причины популярности Python Качество программного обеспечения Высокая скорость разработки Переносимость программ Библиотеки поддержки Интеграция компонентов Удовольствие
Кто использует Python? Google в своей поисковой системе Youtube BitTorrent САПР Maya для управления сценариями Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm и IBM, для тестирования аппаратного обеспечения. Industrial Light & Magic, Pixar и другие, используют Python в производстве анимационных фильмов. NASA, Los Alamos, Fermilab, JPL и другие используют Python для научных вычислений.
Применение Python Системное программирование Графический интерфейс Веб-сценарии Интеграция компонентов Приложения баз данных Быстрое создание прототипов Программирование математических и научных вычислений Игры, изображения, искусственный интеллект, XML роботы и многое другое
Веб-сценарии Пакет mod_python предназначен для запуска сценариев на языке Python под управлением веб-сервера Apache и поддерживает шаблоны механизма Python Server Pages. В Python существуют полноценные пакеты веб- разработки: Django, TurboGears, web2py, Pylons, Zope и WebAware, поддерживающие возможность быстрого создания полнофункциональных веб-сайтов на языке Python.
Приложения баз данных В языке Python имеются интерфейсы доступа ко всем основным реляционным базам данных – Sybase, Oracle, Informix, ODBC, MySQL, PostgreSQL, SQLite и др. В Python существует переносимый прикладной программный интерфейс баз данных, предназначенный для доступа к базам данных SQL из сценариев на языке Python, который унифицирует доступ к различным базам данных.
Особенности Python Объектно-ориентированный Свободный Кросс-платформенный Соединяемый Прост в изучении Гибкий: – Динамическая типизация – Автоматическое управление памятью – Модульное программирование – Встроенные типы объектов
Интерпретатор Интерпретатор – это модуль, который исполняет другие программы путём считывания и немедленного исполнения исходного текста программы. Python – интерпретируемый язык.
Процесс исполнения программы Компиляция в байт-код Исполнение байт-кода на виртуальной машине Python (PVM)
Компиляция в байт-код При запуске программы Python в начале компилирует исходный текст в байт-код – низкоуровневое, платформонезависимое представление исходного текста программы. Байт-код исполняется намного быстрее, чем исходные инструкции из текстового файла.
Компиляция в байт-код Если интерпретатор Python обладает правом записи, он будет сохранять байт-код программы в виде файла с расширением.pyc (.pyc – это компилированный исходный файл.py). Интерпретатор сохраняет байт-код для ускорения запуска программ. В следующий раз после запуска программы, Python загрузит файл.pyc и минует этап компиляции.
Модель выполнения программ на языке Python
Альтернативные реализации Python CPython Jython IronPython
Фиксированные двоичные файлы Фиксированные двоичные файлы – самостоятельные исполняемые файлы, генерируемые под конкретную платформу. ФДФ объединяют в единый файл пакета байт-код программ, PVM (интерпретатор) и файлы поддержки. На выходе получается единственный исполняемый файл.
Инструменты для создания фиксированных двоичных файлов py2exe (для Windows) PyInstaller (для Windows, Linux и UNIX) freeze
Интерактивный режим Командная строка интерпретатора, которая называется иногда интерактивной оболочкой, позволяет вводить инструкции с клавиатуры и сразу же исполнять их. Запуск интерпретатора: % python3.2 Python (default, Nov , 15:05:32) [GCC [FreeBSD]] on freebsd8 Type "help", "copyright", "credits" or "license" for more information. >>>
Выполнение инструкций в интерактивном режиме % python3.2 >>> print(Hello world!) Hello world! >>> print(2 ** 8) 256
Выполнение команд в интерактивном режиме >>> lumberjack = okay >>> lumberjack okay >>> 2 ** >>> # Для выхода используйте клавиши Ctrl-D (в UNIX) или Ctrl-Z (в Windows) %
Первый сценарий # Первый сценарий на языке Python import sys # Загружает библиотечный модуль print(sys.platform) print(2 ** 100) # Возводит число 2 в степень 100 x = Spam! print(x * 8) # Дублирует строку
Исполняемый сценарий в UNIX (#!) #!/usr/local/bin/python3.2 print('hello world') print(2 ** 100)
Запуск программы из командной строки По общепринятым соглашениям файлы с программами на языке Python должны иметь расширение.py. % python3.2 hello.py Или: %./hello.py
Импортирование модулей Инструкция import выполняет загрузку другого файла и обеспечивает доступ к его содержимому. Операция импорта на заключительном этапе приводит к выполнению программного кода загружаемого файла.
Импортирование модулей C:\misc> c:\python32\python >>> import script1 win Spam!Spam!Spam!Spam!Spam!Spam!Sp am!Spam!
Перезагрузка модулей