Мне представили логику Python и графический интерфейс, написанный на C++ Qt, и попросили объединить их. Прежде чем я выберу маршрут повторной реализации графического интерфейса, например. PySide, я хотел бы знать, какой способ будет наиболее плавным для достижения такой комбинации. Предпочел бы я сделать графический интерфейс C++ доступным для логики Python (и уровня управления) или наоборот?
Я с удовольствием предоставлю дополнительную информацию, если это необходимо. Моя проблема заключается в отсутствии опыта в этом вопросе и в том, что существует так много решений, как сделать код одного языка доступным для другого, что я чувствую себя немного задушенным в вариантах.
В этом случае логика Python на самом деле является просто (слишком большим, но это уже другая тема) классом, который предоставляет некоторые методы обработки сигналов.
Это четкая перефразировка предыдущего вопрос, который я несколько неуклюже сформулировал, и поэтому упустил его цель.
Это явно не учебный вопрос. Это вопрос о том, какие инструменты помогут мне достичь того, о чем меня просили, с какой стороны я должен взяться за это (сторона C++ или сторона Python) и как может выглядеть основная концепция решения (т.е. создать привязки для графического интерфейса к используйте его в Python! или Создайте привязки для логики, чтобы использовать его в C++ и т. д...)
Так что-то еще более широкое и глубокое, чем туториал? Книга? Это не улучшает ситуацию.
Это немного зависит от того, что на самом деле представляет собой ваш Логика Python. Это готовое консольное приложение? Это функция для вызова? Вы можете запустить программу python как подпроцесс из своего графического интерфейса Qt. Вы также можете встроить интерпретатор Python для запуска вашего кода Python внутри вашего приложения C++. Может быть, попробуйте поподробнее описать, что на самом деле делает ваш Логика Python и как он называется. (Я проигнорировал возможность просто повторно реализовать код Python на C++.)
@Scheff Спасибо за попытку помочь. Я отредактировал небольшое пояснение. Логика Python на самом деле представляет собой очень ограниченное количество классов, предоставляющих методы обработки данных. По строкам «чтение данных», «выполнение БПФ», «вычисление XyzStuff» и т. д.; ничего слишком сложного.
Мы используем Python в качестве «макро» языка в нашем интерактивном приложении визуального моделирования C++/OpenGL/Qt-GUI. Были некоторые подводные камни, но в итоге работает неплохо. Мы встроили интерпретатор Python в наше приложение C++. Мы добавили в Python несколько объектов-капсул, чтобы можно было изменять объекты C++ из скриптов Python. Для этого мы не использовали никаких интерфейсных инструментов, а написали что-нибудь на C/C++ на основе документации Python. Расширение и встраивание интерпретатора Python (и некоторые поиски в Google для получения подробной информации).
@Scheff Спасибо, я посмотрю эту часть документации!






Если вы просите учебник по PySide2 или PyQt5, то это явно не вопрос о переполнении стека.