Все примечательные дистрибутивы и Mac OS поставляется поставляются с некоторой версией Python. В Windows не установлен Python по умолчанию, поэтому вы должны установить его отдельно, чтобы запустить модуль Python. Конечно, установленная версия Python должна быть такой же, как ваша программа (версия 2 или 3).
Самый простой способ распространять свои программы, чтобы просто распространять исходный код (например, отправить свой модуль по электронной почте или загрузить его где-то), но в этом случае целевой компьютер должен иметь Python установлен и отвечают зависимости. Еще лучшим решением (по крайней мере для сообщества) является загрузка вашей программы в виде пакета на PyPi. Более подробную информацию об этой процедуре можно найти HERE.
В некоторых случаях есть причины, препятствующие использованию этих параметров. Например, вы не можете установить python и/или зависимости (нет учетной записи root/admin). Если это так, вы можете объединить свои модули вместе со всем остальным, что требуется для запуска вашей программы (например, python * .dll в Windows). Насколько я знаю, основные варианты такого рода распределения являются следующие:
- py2exe
- py2app (только для Mac OS)
- PyInstaller
- cx_Freeze
- bbFreeze
- vendorID
- freeze
- nuitka --standalone
- cython --embed
графический интерфейс для большинства из этих инструментов (я думаю, только для окон) является gui2exe (кроме замораживания).
Другой подход заключается в использовании Portable Python или в случае Linux/BSD StaticPython
Примечание: Не все вышеупомянутые инструменты работают на всех платформах и/или поддерживать Python3. Проверьте их документацию.
UPDATE
довольно интересный модуль также Esky, который обещает автоматическое обновление замороженных приложений. Вы можете найти видео-введение HERE
http://stackoverflow.com/questions/1558385/how-can-i-distribute-python-programs?lq=1 – pmav99