Какие программы можно писать на питоне
Перейти к содержимому

Какие программы можно писать на питоне

  • автор:

7 редакторов кода и IDE для Python

7 редакторов кода и IDE для Python

Писать простые программы на Python можно и в интегрированной среде, установленной по умолчанию, но со временем вам понадобятся более мощные и удобные инструменты.

Рассказываем о редакторах кода и IDE для комфортной работы с Python.

Редакторы кода или IDE — что выбрать

Редакторы кода — это программы для обработки кода с дополнительными функциями. Среди них — форматирование кода, автодополнение, подсветка синтаксиса.

У IDE (интегрированной среды разработки) функционал шире, чем у редакторов, но требует больших мощностей системы. Среда разработки Python обычно состоит из редактора кода, отладчика и компилятора. Есть IDE только для Python, но большинство работает с несколькими языками программирования.

Редакторы кода лучше подходят для создания небольших программ, а IDE — для работы с масштабными проектами.

Интегрированные среды

Thonny часто рекомендуют как среду разработки Python для новичков. Он доступен на Windows, macOS и Linux. Среди его возможностей — отладка кода, функциональная подсветка синтаксических элементов и совпадающих имен. Также в Thonny есть ассистент с визуализацией ошибок, а приложение можно открыть в нескольких окнах.

С 2017 года Thonny включен в операционную систему Raspberry Pi OS.

Стоимость: бесплатно.

Как основной редактор Python его используют 33% программистов. Преимущество IDE — встроенный терминал для запуска кода во время работы. PyCharm может использоваться для веб-разработки благодаря интеграции JavaScript, HTML и CSS. Также он поддерживает фреймворки Python (Django) или библиотек, которые используют в научных исследованиях и визуализации (NumPy, Anaconda, Metplotlib).

PyCharm доступен для Windows, macOS и Linux.

Стоимость: PyCharm Community — бесплатно. PyCharm Professional — $89 в год.

Эта интегрированная среда разработки создана Microsoft. Она доступна для Windows и macOS.

Среди преимуществ — редактор форм для графических интерфейсов, дизайнер схем баз данных. К IDE устанавливаются плагины и расширения. С Python IDE работает через расширение Python Tools for Visual Studio. Программа существует в трех версиях: Visual Studio Community, Professional и Enterprise. Первая версия распространяется бесплатно. В двух остальных больше инструментов для кроссплатформенной разработки. Например, доступен симулятор iOS для Windows или совместное использование кода в Android и iOS.

Стоимость: Visual Studio Community — бесплатно.

Версия Professional — $45 в месяц, Enterprise — $250 в месяц.

статьи по теме:

Обзор библиотеки Pillow.

Дата-сайентисты из Parimatch Tech — о рекомендательной системе, создании моделей и развитии data science.

IDE с открытым кодом, которая разработана для специалистов по data science. Входит в дистрибутив Anaconda, а также поддерживает другие библиотеки для научной аналитики — SciPy, Matplotlib, NumPy. Кроме стандартных функций IDE (редактирование кода, отладка, рефакторинг), в Spyder есть проводник переменных. С его помощью можно узнать значения переменных в таблице внутри IDE. Также в Spyder есть режим двух окон, который разрешает одновременно прописывать код и видеть изменения.

Стоимость: бесплатно.

курсы по теме:

Data Science with Python

Кардаш Александра

Director of Data Science в Shelf

Прогнозирование и анализ временных рядов

Исакова Кристина

Data Scientist в Holidu

Редакторы кода

Это текстовый редактор с открытым кодом. Он разработан в Microsoft на базе фреймворка Electron. Приложение поддерживает практически все языки программирования и интеграцию с Git и GitHub. В редакторе есть библиотека элементов кода. Также можно добавлять в память снипетты — собственные фрагменты кода. Visual Studio Code поддерживает одновременную работу с несколькими проектами.

Стоимость: бесплатно.

Редактор кода Atom тоже построен на базе Electron, но был запущен раньше, чем Visual Studio Code. Среди возможностей обоих редакторов — добавление плагинов, расширений и тем, которых у обеих программ больше 10 тыс. В Visual Studio Code контролируемый базовый набор функций, а плагины добавляют программе поверхностный функционал. В случае Atom’а плагины стоят в основе программы, что позволяет делать персонализированную настройку. Atom поддерживает кроссплатформенное редактирование. Также есть возможность разделить окно программы для отдельного отображения кода и файлов.

Стоимость: бесплатно.

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

Стоимость: $80.

5 проектов, которые можно сделать на Python

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

Наталья Березовская

Наталья Березовская

Автор в сфере IT, digital, экономики и финансов. Ведёт некоммерческий проект для начинающих писателей «ЛитЦех».

Задаваться вопросом, что пишут на Python, кажется даже не вполне корректным: на нем можно создать практически все. Благодаря многочисленным библиотекам, фреймворкам, собственному компилятору и поддержке крупных корпораций вроде Google сегодня Python стал языком общего назначения. Гибкий, простой и быстрый, он собрал сотни тысяч фанатов по всему миру.

Python отлично показывает себя в следующих областях:

  • системное программирование;
  • веб-программирование — backend;
  • Data Science и анализ данных;
  • графические интерфейсы;
  • веб-сценарии;
  • искусственный интеллект.

Мы приводим примеры пяти мануалов, с помощью которых вы можете реализовать несложные проекты, начав изучать Python на практике.

1. Автоматизация рутинных задач

В этом пособии для новичков даны пошаговые инструкции по тому, как упростить и автоматизировать множество скучных задач в электронных таблицах, поисковых системах, при загрузке онлайн-контента, заполнения форм и многих других. Вы будете работать со скриптами, файлами, объектами и классами, проводить скрейпинг сайтов — в общем, на практике применять теоретические знания.

2. Создание калькулятора

С помощью Python и этого руководства вы можете сделать простое приложение для пользователей — калькулятор. Это дверь в GUI-программирование — создание интуитивно понятных графических интерфейсов. В процессе вы поработаете с модулем tkinter, который уже предустановлен в последних версиях Python.

3. Создание блога

Это открытие фреймворка Flask. На Python написаны такие сервисы, как Instagram* и YouTube, поэтому он отлично подходит для создания собственного микроблога в экспериментальных, а возможно, и коммерческих целях. В мегаруководстве Мигеля Гринберга детально разбирается Flask, а после его изучения вы сможете написать свое первое веб-приложение.

4. Майнинг данных из Twitter

Для работы с анализом данных подойдет, разумеется, не только Twitter — любая открытая площадка в интернете, — но мы приведем этот пример. При помощи модулей вы сможете отсортировать и структурировать нужную информацию. Используя Tweepy — отфильтровать посты юзеров по определенным параметрам. А с помощью GraphQL можно будет привести результат работы в вид графического интерфейса.

5. Создание блокчейна

Технологии криптошифрования используют не только как финансовый инструмент — найти им применение можно во множестве областей. Если вам интересен блокчейн, попробуйте создать собственный. Для этого вам понадобится работать с библиотекой requests и HTTP-клиентами и вооружиться вот этим руководством.

Читайте также:

  • Как начать программировать на Python
  • Читерство ИИ в культовых настолках: как нейросети научились обыгрывать людей на интуиции
  • Что такое Git: объясняем на схемах

* Решением суда запрещена «деятельность компании Meta Platforms Inc. по реализации продуктов — социальных сетей Facebook и Instagram на территории Российской Федерации по основаниям осуществления экстремистской деятельности.

Топ-16 Python-приложений в реальном мире

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

Гвидо ван Россум

За последние несколько лет технологии вокруг нас поменялись почти во всех аспектах. Мы живем в мире, где во главе угла стоит программное обеспечение, а за почти любой службой стоит какая-нибудь строчка кода. Индустрия путешествий, банкинг, образование, исследования, военная сфера — лишь немногие из тех, кто полагается на ПО.

Любой софт написан на каком-то языке программирования. А число последних лишь растет.

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

Реальные приложения на Python

Python сильно поменялся с момента создания в 1991 году Гвино ван Россумом. Это динамический, интерпретируемый, высокоуровневый язык программирования, с помощью которого можно создать массу разнообразных приложений. У него плавная кривая обучения и понятный синтаксис.

С помощью Python делают веб-приложения, видеоигры, занимаются Data Science и машинным обучения, разрабатывают софт, работающий в реальном мире, а также встроенные приложения и многое другое.

1. Веб-разработка

Наверняка все разработчики знают, что такое веб-разработка. Это квинтэссенция применимости Python. Также этот язык выделяет широкое разнообразие фреймворков и систем управления контентом (CMS), которые упрощают жизнь разработчика. Среди самых популярных решений — Django, Flask, Pyramid и Bottle. Среди CMS выделяются Django CMS, Plone CMS и Wagtail.

Веб-разработка на Python дает такие преимущества, как повышенная безопасность, масштабируемость и удобство в процессе работы. Также язык из коробки поддерживает такие протоколы, как HTML, XML, email-протоколы, FTP. У Python одна из крупнейших коллекций библиотек, упрощающих и улучшающих жизнь разработчика.

Посмотреть список сайтов, которые использую python можно на https://trends.builtwith.com/framework/Python.

2. Разработка игр

По аналогии с веб-разработкой в Python есть масса инструментов и библиотек для разработки игр. Кстати, а вы знали, что на этом языке программирования была написала популярная некогда Battlefield 2?

Для разработки игр используются такие библиотеки, как PyGame, Pycap, Construct, Panda3D, PySoy и PyOpenGL.

Также с помощью Python были разработаны такие проекты, как Sims 4, World of Tanks, Civilization IV и EVE Online. Можно вспомнить еще Mount & Blade, Doki Doki Literature Club, Frets on Fire и Disney’s Toontown Online.

3. Искусственный интеллект и машинное обучение

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

Искусственный интеллект и машинное обучение — очень популярные темы сегодня. С помощью них мы сегодня принимаем очень много решений. Python отчасти повлиял на такой рост популярность отрасли.

Стабильность и безопасность языка сделали его идеальным для интенсивных вычислений, без которых AI и ML не обходятся. А широкая коллекция библиотек помогает при разработке моделей и алгоритмов. Вот самые популярные библиотеки:

  • SciPy для научных и технических вычислений.
  • Pandas для анализа данных и манипуляции ими.
  • Keras для нейронных сетей.
  • TensorFlow для машинного обучения, особенно для глубоких нейронных сетей.
  • NumPy для сложных математических функций и вычислений.
  • Scikit-Learn для работы с разными моделями машинного обучения.

4. Графический интерфейс для настольных приложений

Иногда можно обойтись и без полноценного интерфейса, но для большинства проектов сегодня важен GUI. И для них в Python тоже есть множество решений.

При этом доступный синтаксис и модульная структура позволяют создавать быстрые и отзывчивые интерфейсы, делая еще и сам процесс разработки приятным. Среди самых популярных библиотек и фреймоворков — PyQt, Tkinter, Python GTK+, wxWidgets и Kivy.

5. Обработка изображений

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

Среди самых популярных инструментов в Python можно выделить OpenCV, Scikit-Image, Python Imaging Library (PIL). Среди известных приложений, использующих Python — GIMP, Corel PaintShop, Blender и Houdini.

6. Обработка текста

Обработка текста — чуть ли не самый распространенный сценарий использования Python. Она руку идет с NLP (обработкой естественного языка), но не будем погружаться в эту тему сейчас. Обработка текста позволяет обрабатывать большие объемы текста, предоставляя гибкость структуры. Можно запросто сортировать строки, извлекать определенный текст, форматировать абзацы и так далее.

7. Бизнес приложения

Бизнес приложения во многом отличаются от обычного потребительского ПО. Во-первых, они предлагают ограниченный набор функций вместо десяток или даже сотен возможностей. Во-вторых, у них есть конкретная целевая группа (чаще всего ею выступает определенная организация).

Python отлично подходит для разработки таких высоконагруженных приложений.

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

8. Образовательные и тренировочные программы

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

Есть масса обучающих ресурсов для получения начальных знаний по Python, но среди самых популярных можно выделить Coursera, edX, Udemy, Python Institute и Harvard.

9. Аудио и видео приложения

Эффективность Python позволяет использовать его для аудио и видео приложений. Для этого есть масса инструментов и библиотек. Сигнальная обработка, управление аудио, распознавание звуков — все это доступно с помощью таких библиотек, как Pyo, pyAudioANalysis, Dejavu и других.

Для видео же есть Scikit-video, OpenCV и SciPy. С их помощью можно управлять видеороликами и готовить их к использованию в других приложениях. На Python написаны Spotify, Netflix и YouTube.

10. Парсинг

В интернете просто невероятные объемы информации. И с помощью веб-парсеров данные на сайтах можно собирать, сохраняя их в одном месте. После этого их могут использовать исследователи, аналитики или организации для самых разных задач.

На Python есть такие библиотеки, как PythonRequest, BeautifulSoup, MechanicalSoup, Selenium и другие. Парсеры используются для отслеживания цены, аналитики, анализа в социальных медиа, проектах машинного обучения и в любых других проектах, где есть большие объемы данных.

11. Data Science и визуализация данных

Данные играют ключевую роль в современном мире. Они помогают понимать людей, их вкусы, собирать и анализировать интересные наблюдения. Это все — важная часть Data Science. В этой области требуется определить проблему, собрать данные, обработать их, изучить, проанализировать и визуализировать.

В экосистеме Python есть такие решения, как TensorFlow, PyTorch, Pandas, Scikit-Learn, NumPy, SciPy и многие другие.

Визуализация важна, когда данные нужно преподнести команде или держателям акций. Для этого в Python есть Plotly, Matplotlib, Seaborn, Ggplot, Geoplotlib и другие.

12. Научные и математические приложения

Мы уже определили, что в Python есть библиотеки для научных и математических вычислений, включая AI, ML и Data Science. Но даже если не брать эти сферы, язык пригодится, например, для работы с высокоуровневыми математическими функциями.

Стоит отметить такие инструменты, как Pandas, IPython, SciPy, Numeric Python, Matplotlib и другие. С помощью Python созданы такие приложения, как FreeCAD и Abaqus.

13. Разработка программного обеспечения

Python подходит не только для веб-разработки, научной разработки, создания игр или встраиваемых систем. По большому счету, это универсальное решение для софта любого типа. Все это возможно благодаря тому, что Python обеспечивает высокую скорость исполнения, хорошую совместимость, отличную поддержку со стороны сообщества, а также огромное количество библиотек. С помощью Python были созданы Roundup, Buildbot, SCons, Mercurial, Orbiter и Allura.

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

14. Операционные системы

Операционные системы — мозг любого компьютера. На Python, например, работают ОС, построенные на базе Linux. Как минимум, отдельные части таких систем.

В качестве примеров можно вспомнить Ubiquity Installer от Ubuntu, Anaconda Installer от Red Hat Enterprise. Также язык использовался для создания Gentoo Linux и системы управления пакетами Portage в Google Chrome OS. Вообще комбинация Python и C дает огромные преимущества при проектировании и разработке операционных систем.

15. CAD-приложения

CAD (computer aided design) приложения преимущественно используются в автомобильной, аэрокосмической и архитектурной сферах. Они помогают инженерам и дизайнерам проектировать продукты с точностью до миллиметров.

В среде Python из таких приложений есть FreeCAD, Fandango, PythonCAD, Blender и Vintech RCAM. Они предоставляют такие функции, как макрозапись, верстаки, симуляция роботов, скетчинг, поддержка мультиформатного импорта/экспорта, модули технического чертежа и многое другое.

16. Встроенные приложения

Одна из самых впечатляющих возможностей Python — работа на встроенном железе. Это такие устройства, которые предназначены для выполнения ограниченного набора действий. Встроенный софт — это тот, который отвечает за работу таких устройств. Среди самых популярных приложений MicroPython, Zerynth, PyMite и EmbeddedPython.

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

Другие приложение на Python

  • Консольные приложения
  • Компьютерное зрение
  • Робототехника
  • Разработка языков
  • Автоматическое тестирование
  • Автоматизация
  • Анализа данных

Вывод

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

Если вы только знакомитесь с программированием в целом, то этот материал должен был убедить вас выбрать в качестве первого языка Python. Благо, выучить его сегодня легко с помощью обилия книг, курсов, GitHub-репозиториев, популярных инструментов и библиотек.

5 классных вещей, которые вы можете освоить с Python

Python — универсальный язык программирования. По данным на январь 2023 года, он стал самым популярным согласно рейтингам TIOBE и PYPL.

Что можно написать на Python? Всё, что угодно. В этой статье мы расскажем о том, какие интересные программы можно создавать на Питоне, а также поделимся лайфхаками для работы с этим языком в Терминале.

Что пишут на Python

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

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

Практическое применение фреймворков с поддержкой Python может быть следующим:

  • NumPy — работа с многомерными массивами и математическими функциями.
  • Django и Flask — разработка веб-приложений.
  • SQLAlchemy — работа с базами данных по технологии ORM.
  • Cocos2d — создание браузерных и мобильных игр.
  • Tornado — разработка высокопроизводительных приложений, которые предназначены для работы с большим количеством пользователей.
  • Bubot — для домашней автоматизации и программирования робототехники.

О том, для каких задач подходит Python, расскажем ниже.

Какие задачи можно решать, используя Python

Веб-разработка

Python поддерживает платформы для веб-разработки: например React, где используется связка Django (backend) + JavaScript (frontend). Этот же технологический стэк используется в DropBox.

Кроме этого, Python позволяет настроить доступ к файловой системе Linux со смартфона. Ниже покажем пример такой программы на Python. Выполните следующие действия:

  1. Откройте Терминал с помощью комбинации клавиш Ctrl + Alt + T.
  2. Запустите файловый сервер с помощью команды:
    python3 -m http.server После этого файловая система станет доступна с любого устройства локальной сети.
  3. Проверьте локальный IP:
    ip addr | grep inet В третьей строке вывода вы увидите нужный IP-адрес.
  4. Откройте браузер на смартфоне. В адресной строке введите следующее:
    123.123.123.123:8000
    Вместо 123.123.123.123 укажите локальный IP-адрес из предыдущего шага.

Автоматизация

Python позволяет упростить выполнение ряда задач. Например:

  • установить напоминание,
  • настроить Cron-задание,
  • загрузить видео на видеохостинг и другие.

Чтобы автоматизировать эти действия, можно написать скрипт на Python. После этого ваше участие в качестве IT-специалиста не потребуется: после отработки кода все произойдет само собой.

Например, так можно конвертировать файл из формата CSV в JSON:

  1. Откройте Терминал с помощью комбинации клавиш Ctrl + Alt + T.
  2. Выполните команду:
    python -c «import csv,json;print(json.dumps(list(csv.reader(open(“file.csv”)))))»
    Вместо file.csv укажите имя вашего файла.

Создание игр

Python включает в себя библиотеки для разработки компьютерных и мобильных игр. Наиболее популярная из них — Kivy. Она позволяет создавать кроссплатформенные игры, которые поддерживаются популярными операционными системами: Windows, Linux, Mac, Android и iOS.

Кроме этого, вы можете запускать игры в Терминале Linux (например, Виселица). Для этого:

    Сохраните этот код в файл с расширением .py:
    from random import shuffle
    # Кол-во попыток.
    turns = 10

print(«Привет, Давай сыграем в виселицу! У тебя есть turns попыток!»)
# Список слов, которые участвуют в игре.
wordList = [«geekflare», «awesome», «python», «magic»]
# Перемешиваем список.
shuffle(wordList)
# Берем последнее слово из списка.
word = wordList.pop()
guesses = » »
# Цикл, который будет работать, пока не останется попыток или не отгаданных букв.
while turns > 0:
wrong = 0

for char in word:
if char in guesses:
print(char, end= » «)
else:
print(«_», end=» «)
wrong += 1

print(«\n»)

if wrong == 0:
print(«Ты выиграл! :)»)

break

print()

guess = «»
if len(guess) < 1:
guess = input(«Впиши букву и нажми enter: «)[0]

if guess in guesses:
print(«Эта буква уже была!»)
guesses += guess

if guess not in word:
turns -= 1

Веб-парсинг

Веб-парсинг (Web Scraping) — это сбор информации в интернете из открытых источников. Парсинг относится к автоматизированным способам получения данных и выполняется по заданным условиям. Он позволяет собирать информацию из поисковой выдачи, а также открытые данные с сайтов и социальных сетей.

Python позволяет анализировать и использовать неструктурированные данные из Сети. Для этого можно использовать специальные Python-библиотеки: Beautiful Soup и Scrapy.

В качестве примера покажем, как узнать значение валюты относительно доллара США в системе Linux. Для этого:

  1. Откройте Терминал с помощью комбинации клавиш Ctrl + Alt + T.
  2. Установите библиотеки для парсинга и запросов:
    pip install beautifulsoup4 requests
  3. Создайте файл с названием currency_scrap.py и добавьте в него следующий код:
    import requests
    from bs4 import BeautifulSoup

URL = «https://www.x-rates.com/table/?from=USD&amount=1»
r = requests. get (URL)

soup = BeautifulSoup (r.content, «html.parser» )
ratelist = soup. findAll ( «table» , < "class" : "ratesTable" >)[ 0 ]. findAll ( «tbody» )

for tableVal in ratelist :
trList = tableVal. findAll ( «tr» )

Data Science и машинное обучение

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

Кроме этого, существуют фреймворки с поддержкой Python для глубокого машинного обучения, например:

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

Как запустить Python приложение на хостинге SpaceWeb

На данный момент на наших серверах виртуального хостинга установлено 4 версии Python. Это Python 2.7, 3.3, 3.4, 3.8. Точные версии можно узнать командами:

$ python2.7 -V
Python 2.7.7

$ python3.3 -V
Python 3.3.5

$ python3.4 -V
Python 3.4.1

$ python3.8 -V
Python 3.8.5*

Запуск скрипта Python через CGI

CGI (от англ. Common Gateway Interface — «общий интерфейс шлюза») — стандарт интерфейса, используемого для связи внешей программы с веб-сервером. Программу, которая работает по такому интерфейсу совместно с веб-сервером, принято называть шлюзом, хотя многие предпочитаю названия «скрипт»(сценарий) или «CGI-программа».

Для запуска скриптов python через CGI необходимо выполнить следующие действия:

  • Добавить в файл .htaccess директиву:
    AddHandler cgi-script .py
  • Указать первой строкой в скрипте путь к используемому интерпретатору. Так называемый shebang.
    #!/usr/bin/python2.7
    для использования python 2.7.5 или другую версию.
  • Указать расширение для файла *.py и выставить на файл права доступа 755.

Запуск скрипта Python через MOD_WSGI

WSGI (англ. Web Server Gateway Interface) — стандарт взаимодействия между Python-программой, выполняющейся на стороне сервера, и самим веб-сервером, например, Apache.

Стандарт интерфейса (на английском): http://www.python.org/dev/peps/pep-0333/
По стандарту, WSGI-приложение должно удовлетворять следующим требованиям:

  • должно быть вызываемым (callable) объектом (обычно это функция или метод);
  • принимать два параметра:
    словарь переменных окружения (environ);
    обработчик запроса (start_response);
  • вызывать обработчик запроса с кодом HTTP-ответа и HTTP-заголовками;
  • возвращать итерируемый объект с телом ответа;

Пример простого wsgi-приложения:

def application(environ, start_response):
status = ‘200 OK’
output = b’Hello World!’
response_headers = [(‘Content-type’, ‘text/plain’),

(‘Content-Length’, str(len(output)))]
start_response(status, response_headers)
return [output]

Если приложение будет использовать подключение к базе MySQL, то необходимо для неё сделать удаленный доступ для IP-адреса 127.0.0.1

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *