wxPython для Python 3

Есть ли у wxPython версия для Python 3?

Если это произойдет, где я могу получить это?

8 ответов

Решение

Обновленные новости по этому вопросу публикуются в wxpython wiki. Здесь вы можете найти несколько правок, обновляющих первоначальный ответ (первый более поздний)

Декабрь 2011: отличные новости! Первая сборка проекта Phoenix - новый wxPython, который будет поддерживать Python 2.x и 3.x. Текущие сборки для Python 2.7.

Ноябрь 2011: последнее обновление вики от 19 апреля 2011 года. == Нет новостей для 3.x:-(

Предварительная дорожная карта wxPython

  • wxPython "Next Generation": (продолжается) В течение последних нескольких лет периодически обсуждались совершенно новые способы генерации кода, используемого для модулей расширения wxPython (он же является кодом оболочки C++). Для этой цели была проделана определенная проектная работа, и было реализовано подтверждение концепции. В двух словах, доказательство концепции превзошло все мои ожидания, и я чувствую, что это будет отличным способом автоматизировать процесс генерации кода-обертки. Более подробную информацию о целях и дизайне нового wxPython можно найти в ProjectPhoenix, а исходный код можно посмотреть в репозитории wx. Хотя новый подход в будущем значительно упростит обслуживание wxPython, все еще предстоит проделать большой объем работы по переходу, и поэтому он не станет задачей с наивысшим приоритетом, пока не будет завершено и проверено больше основополагающих частей низкого уровня. Тем временем текущий выпуск 2.9.x ReleaseSeries будет продолжать развиваться, используя старую технологию. #

  • Поддержка Python 3.x: (неизвестно) Ожидается, что некоторые действия, выполняемые для проекта Next Generation, упростят возможность поддерживать поддержку Python 2.x и 3.x в одном и том же дереве исходных текстов, поэтому мы откладываем много усилий на порт Python 3.x, чтобы не тратить время на что-то, что может закончиться тем, что его выбросят, как только будет сделан NG-переключатель. Однако если этот проект следующего поколения останется в ожидании слишком долго, я, вероятно, еще раз вернусь к этому пункту и увеличу приоритет.

На данный момент (ноябрь 2011) wxPython, после Django, является самым желанным пакетом для Python 3-кодировщиков:

Вот 15 наиболее часто назначаемых пакетов, где пользователи хотят поддержку Python 3

Пакет Количество голосов
Джанго 1970
wxPython 941
Matplotlib 875
..................
..................

Июнь 2010: в py3k нет расписания для wxpython

Предварительная дорожная карта wxPython

  • wxPython "Next Generation": (будущее) В течение последних нескольких лет периодически обсуждались совершенно новые способы генерации кода, используемого для модулей расширения wxPython (он же является кодом оболочки C++). Для этой цели была проделана определенная работа по проектированию, и началась некоторая работа над инструментами. Однако, поскольку работа над этим продвигалась медленно, я решил немного ее приостановить, чтобы я мог передать некоторые новые функции и исправления из серии выпусков 2.9 в руки разработчиков wxPython. Я ожидаю, что смогу вернуться к этой цели через некоторое время после выпуска 2.9.1. Как только дизайн, планы и инструменты будут готовы, я опубликую больше информации об этом и открою для других разработчиков, чтобы помочь.
  • Поддержка Python 2.7: (сейчас) Машины сборки Windows и OSX были обновлены до Python 2.7, а двоичные файлы для 2.7 включены в 2.8.11.0 и будут включены в будущие предварительные сборки и выпуски.
  • Поддержка Python 3.x: (неизвестно) Я надеюсь, что некоторые вещи, которые будут сделаны для проекта Next Generation, упростят возможность поддерживать поддержку Python 2.x и 3.x в одном и том же дереве исходных текстов, поэтому Я откладываю много усилий на порте Python 3.x, чтобы не тратить время на что-то, что может в конечном итоге быть выброшено после переключения NG. Однако если этот проект следующего поколения останется в ожидании слишком долго, я, вероятно, еще раз вернусь к этому пункту и увеличу приоритет.

Из новостных групп:

Обратите внимание, что PyQt теперь поддерживает Python 3, поэтому, возможно, этот вариант стоит рассмотреть.

wxPython 4 был выпущен 2018-01-31 и теперь доступен для установки в pip. Он поддерживает Python 2.7 и Python 3.4+. Вы можете найти его на PyPI здесь:

Если вы переходите с wxPython 2.8 или 3.0 на wxPython 4, вам понадобятся следующие статьи:

Старые версии wxPython все еще находятся на SourceForge

Нет. На данный момент последняя версия Python, которую он поддерживает, - 2.6.

В Py3K есть изменения в C API, поэтому вам придется набраться терпения. Это займет некоторое время, прежде чем все библиотеки будут портированы.

Подтверждено, что wxpython работает с python3.3.Спецификация системы: Windows 8.1 64bit. Python был впервые установлен на этой новой машине (поэтому предыдущих версий не существует).Цель: заставить matplotlib работать с их примерами из wx.

Примечания по настройке:

  1. Возьмите wxpython из библиотеки снимков, перечисленной в посте Вернера выше (например, wxpython для py3.3, 64 бит). wxversion не был включен, поэтому получил его от MIT. Также разместите его в пакетах сайта.

  2. преобразовать содержимое в wxversion для совместимости с py 3.3. т.е. замените has_key на in и try, за исключением конструкций, которые будут использоваться вместо ",". Когда вы запустите код в eclipse или подобном, интерпретатор скажет вам, что ему не нравится.

  3. Для установки matplotlib мне не нужно было добавлять wxversion.select() в пример кода, но matplotlib действительно нуждался в этом модуле. Попытка вызова select () не удалась бы для любой выбранной версии (даже с большим диапазоном возможных номеров версии XX).

Пока нет бинарных инсталляторов, но обычные сборки снимков, которые легко установить.

http://wxpython.org/Phoenix/snapshot-builds/

Я запускаю его в Windows и просто создаю папку в пакетах сайта, например, "\site-packages\wx-2.9.6-msw" и копирую в нее папку "wx" из снимка-сборки, а затем использую wxversion для работы с этим.

import wxversion
import twcbsrc.configdev as cfd
wxversion.select('2.9.6')

Эта команда c:\Python34\Scripts\pip install -U --pre -f http://wxPython.org/Phoenix/snapshot-builds/ wxPython_Phoenix должен получить последнюю версию Phoenix для любой ОС, так как теперь поддерживаются форматы файлов колеса Python.

Если вы столкнулись с проблемой при установке wxpython на Python3, используйте эту команду для установки wxpython

$ pip install -U -f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-16.04 wxPython

С помощью этой команды вы можете установить последнюю версию wxPython4. Если вы используете Windows или MacOS

$ pip install -U wxpython

Если вы хотите использовать Anaconda Venv, используйте это

$conda intall -c anaconda wxpython
Другие вопросы по тегам