Для создания интерфейса командной строки для вашей программы вы, вероятно, захотите использовать что-то вроде argparse , которое находится в стандартной библиотеке Python. Есть много других многофункциональных интерфейсных модулей командной строки (например, click), которые вы можете использовать вместо этого. Вы можете разработать взаимодействие с командной строкой для своих пользователей, включая ввод и вывод, меню и т. Д. c.
После того, как вы создали приложение, хорошим выбором для его переноса будет PyInstaller модуль. Если вы установите параметр - onefile при его вызове, он сгенерирует один файл .exe, который можно легко передать пользователям. Если вы также установили параметр - console при вызове PyInstaller, то ваше приложение Python .exe будет взаимодействовать с stdin / stdout. На Windows это будет окно cmd.
Если пользователь вызывает ваш .exe через GUI (например, двойной щелчок по его значку), окно CMD Windows будет открыт. Если вы хотите, чтобы это окно оставалось открытым , тем не менее, вам нужно будет создать приложение с неким «бесконечным» / «пленным» дизайном, который никогда не завершится, пока пользователь явно не закроется.
Если пользователь вместо этого запускает .exe с терминала CMD Windows, который уже открыт, то это окно всегда будет оставаться открытым.