Визуальные языки программирования python

13 GUI-библиотек Python

Перевод статьи markdrozdov “13 Python GUI Libraries”.

Python

Python это высокоуровневый язык программирования, он используется как язык общего назначения. Этот язык был создан Гвидо ван Россумом и впервые выпущен в 1991 году. Философия проектирования Python фокусируется на читаемости кода. Для этой цели в языке используется значительное количество пробелов.

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

Python поддерживает множество парадигм программирования, включая:

Графический интерфейс пользователя (GUI)

GUI это человеко-компьютерный интерфейс. Другими словами, это способ, с помощью которого люди могут взаимодействовать с компьютерами.

Он использует окна, значки, меню. Манипулировать GUI можно как с помощью мышки, так и с помощью клавиатуры.

GUI-библиотека

GUI-библиотека содержит виджеты. Виджеты это наборы графических элементов управления.

При создании GUI программы обычно используется каскадный способ. Графические элементы управления добавляются поверх друг друга.

Python GUI

Когда вы пишете приложение с помощью Python, вам для этого понадобится использовать GUI.

Существует много вариантов Python GUI. Есть больше 30 кросс-платформенных фреймворков для программирования GUI на Python. 13 из них перечислены и кратко охарактеризованы ниже. (Возможно, вам будут интересны и другие библиотеки Python, о которых мы писали ранее).

1. Tkinter

Tkinter это набор инструментов, который может формировать GUI с помощью Python. Он позволяет вам запускать сценарии на Python в GUI-формате. Ссылка ведет на страницу с руководством по Tkinter.

2. Flexx

Многие GUI-библиотеки Python основаны на библиотеках, написанных на других языках, таких как C ++. Например, wxWidgets и libavg. Flexx создана на Python. Для отображения GUI использует веб-технологию.

3. CEF Python

Этот фреймворк нацелен на Windows, MAC OS и Linux. Основан на Google Chromium. Основное внимание в нем уделяется облегчению использования встроенного браузера в сторонних приложениях.

4. Dabo

Цель этого фреймворка – WxPython. Это трехуровневый фреймворк для разработки кросс-платформенных приложений.

5. Kivy

Kivy основан на OpenGL ES 2. У него есть собственный multi-touch для каждой отдельной платформы. Это событийно-ориентированный фреймворк, который прекрасно подходит для разработки игр.

6. Pyforms

Pyforms это фреймворк Python 2.7/3.x для разных окружений, используемый для разработки GUI приложения. В нем поощряется повторное использование кода.

7. PyGObject

С помощью PyGObject вы можете писать на Python приложения для проекта GNOME. Также можно писать приложения на Python, использующие GTK+.

8. PyQt

Qt это кросс-платформенный фреймворк. Он написан на С++. Это очень полная библиотека, включающая много инструментов и API. Широко используется во многих отраслях. Охватывает множество платформ.

9. PySide

Обёртка для Qt. PySide и PyQt отличаются тем, что последний является коммерчески доступным.

10. PyGUI

PyGUI предназначен для платформ Unix, Macintosh и Windows. Фокус этого MVC-фреймворка заключается в том, чтобы вписываться в экосистему Python с максимальной легкостью.

11. libavg

Это сторонняя библиотека, написанная на С++. Обладает следующими особенностями:

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

12. PyGTK | PyGObject

«GTK+», широко используемая в Linux, является «GTK + «обёртка из» PyGTK». По сравнению с Kivy и PyQt, PyGTK очень легок для платформ Unix, Macintosh, Windows.

Этот MVC-фреймворк разработан Грегом Эвингом из университета Кентербери (Новая Зеландия). Его главный фокус – как можно более простая адаптация к экосистеме Python.

13. wxPython

Обертка кросс-платформенного GUI для Python на основе wxWidgets. Написана на С++.

Заключение

Приведенный выше список GUI-фреймворков покрывает большую часть нужд разработчика. Выбор зависит от ваших потребностей.

Источник

Выбираем самый удобный редактор кода Python

Львиную долю своего рабочего времени программисты проводят в редакторах кода. В такой ситуации комфортность и удобство рабочей среды трудно переоценить. Конечно, писать код можно и в простейшем текстовом редакторе и сохранять в .html, но с продвинутым редактором это не сравнится. Особенно если редактор ориентирован на конкретный язык. Так как питон был и остается основным языком, используемым в Data Science, и именно ему мы уделяем особое внимание на наших курсах, делимся с вами переводом статьи, автор которой пишет о знакомых ему редакторах и о том, что он считает привлекательным в них.

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

1. Python IDLE

IDLE — редактор, поставляемый вместе с Python. Это базовый, упрощенный режим программирования на Python. Тем не менее, IDLE хороший редактор для начала программирования и понимания основ языка. В нем есть оболочка Python — интерактивный интерпретатор. Его возможности обширны: автозавершение кода, подсветка синтаксиса, подбор отступа и базовый встроенный отладчик.

2. Sublime Text

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

  • Простой и по большей части бесплатный.
  • Тонко настраивается.
  • Компактный и эффективный.

3. Visual Studio Code

Visual Studio Code — бесплатный редактор кода от Microsoft для Windows, Linux и MacOS. Его возможности — отладка, подсветка синтаксиса, интеллектуальное завершение кода, предопределённые фрагменты кода, рефакторинг и интеграция с Git. Поддерживаются различные языки программирования. Для начала работы с Python может понадобиться несколько дополнительных пакетов, но установить их довольно просто. Редактор постоянно обновляется. Visual Studio Code — один из лучших редакторов не только для Python, но и для других языков программирования. Я часто пользуюсь VSC и очень рекомендую его.

  • Это фантастическая платформа с непрерывными обновлениями.
  • Потребляет немного памяти по сравнению с другими громоздкими инструментами разработки.
  • Имеет встроенный терминал и прост в использовании.

4. Jupyter Notebook

Jupyter Notebook — это веб-приложение с открытым исходным кодом, позволяющее создавать документы с выполняемым интерактивно кодом, уравнениями, визуализациями, простым текстом. Конечно, такими документами просто поделиться. Jupyter Notebook используется для очистки и преобразования данных, численного и статистического моделирования, визуализации данных, машинного обучение и многого другого. Этот редактор — хороший вариант для начала работы с наукой о данных и машинным обучением. Файлами можно поделиться с кем угодно, они помогают эффективнее работать с кодом. Я настоятельно рекомендую Jupyter Notebook, поскольку можно работать с каждым блоком кода отдельно. Также есть возможность использовать разметку. Среда Jupyter Notebook широко используется во многих успешных компаниях.

  • Лучшая платформа для начала работы с наукой о данных.
  • Легко делиться файлами и визуализациями.
  • Разметка и другие дополнительные функции.

5. PyСharm

PyCharm — это интегрированная среда разработки специально для Python. Разработана чешской [прим. перев. — автор ориентируется на расположение головного офиса] компанией JetBrains. Редактор разработан специально для Python, так что имеет широкий набор возможностей, таких как автозавершение и инспекции кода, подсветка ошибок, исправления, отладка, система контроля версий и рефакторинг. IDE доступна на Microsoft Windows, Linux и MacOS. Есть бесплатная и платная профессиональная версии. Профессиональная IDE имеет несколько дополнительных функций, но бесплатной версии достаточно для большинства задач. Я настоятельно рекомендую PyCharm, если у вас есть как минимум 8 Гб оперативной памяти.

  • Имеет важные встроенные функции.
  • Разработана профессионалами специально для Python.
  • Поддерживает виртуальные среды Anaconda.
  • Основная проблема PyCharm: если у вас недорогой ПК или ноутбук и в нем нет 8 Гб оперативной памяти, то IDE немного притормаживает и работает довольно медленно.

6. Thonny

IDE Thonny предустановлена на системы Linux и системы на ее основе. Мой опыт работы с этим редактором в основном связан с Raspberry Pi. Это отличная, простая среда разработки для начинающих. Thonny хорошо подходит Raspberry Pi. Некоторые возможности: подсветка синтаксических ошибок, отладчик, автозавершение кода, пошаговое вычисление выражений.

  • Интерактивная среда.
  • Подходит для начинающих.
  • Может использоваться для проектов Raspberry Pi.

7. Spyder

Spyder — это мощная научная интегрированная среда программирования, написанная на Python, для Python. Она разработана учеными, инженерами и аналитиками данных для них самих. Spyder обладает уникальным сочетанием возможностей. Продвинутое редактирование, анализ, отладка и профилирование сочетается с возможностями исследования данных, интерактивного выполнения, глубокой инспекции кода и красивой визуализацией. Установить Spyder просто: скачайте его как часть дистрибутива Anaconda. Разработчики рекомендуют последнюю 64-битную версию Python 3, если у вас нет особых требований.

  • Бесплатный редактор, поставляется с Anaconda.
  • Хорошее рабочее окружение для просмотра интерпретаций и кодирования в два окна.
  • Широкий выбор опций исключительно для Python.

8. Atom

Эта IDE похожа на текстовый редактор Sublime. Она очень настраиваемая и поддерживает многие необходимые пакеты. У меня меньше опыта работы с этим редактором, поэтому я рекомендую скорее Sublime Text, чем Atom. Но перечислю некоторые часто используемые пакеты Atom для разработки на Python: autocomplete-python , linter-flake8 , python-debugger .

9. VIM

Vim — это текстовый редактор, предустановленный в системах MacOS и UNIX. Большинство экспертов любят vim за развитые вычислительные возможности и легкую, компактную среду разработки. Он не рекомендуется начинающим, так как изучать его трудно. Можно добавить плагины подсветки синтаксиса, автозавершения кода, отладки, рефакторинга и другие к Vim и использовать его как Python IDE. [Прим. перев. На скриншоте GVim — версия Vim с графическим интерфейсом].

10. Notepad++

Notepad++ — это редактор текста и исходного кода, работающий на Microsoft Windows. Поддерживается редактирование с вкладками, что позволяет работать с несколькими открытыми файлами в одном окне. Название проекта происходит от оператора инкремента языка С. Notepad++ распространяется как свободное программное обеспечение. Редактор поддерживает множество языков программирования и может быть полезным. На мой взгляд, есть и лучшие варианты. Кроме того, нужно установить дополнительные пакеты, чтобы сделать редактор функциональным для программирования на Python.

  • Заменяет блокнот.
  • Может использоваться для нескольких языков программирования, включая Python.
  • Требуется дополнительная настройка и установки плагинов, чтобы работать с Python.
  • Не в топе рекомендаций: есть много вариантов получше.

11. Онлайн редакторы

На Programiz, tutorials point, w3schools и некоторых других сайтах есть редакторы с удивительными возможностями.

  • Никаких дополнительных установок и настроек.
  • Простой код запускается без особых хлопот.

Расскажите, в каком редакторе для Python вы пишете код и почему?

Получить востребованную профессию с нуля или Level Up по навыкам и зарплате можно, пройдя онлайн-курсы SkillFactory:

  • Курс по Machine Learning
  • Курс «Математика и Machine Learning для Data Science»
  • Продвинутый курс «Machine Learning Pro + Deep Learning»
  • Курс по аналитике данных
  • Курс по DevOps
  • Профессия iOS-разработчик с нуля
  • Профессия Android-разработчик с нуля
  • Профессия Java-разработчик с нуля
  • Курс по JavaScript
  • Профессия UX-дизайнер с нуля
  • Профессия Web-дизайнер

Источник

Читайте также:  Open file http python
Оцените статью