многие мои друзья используют Python для создания своих мобильных приложений и игр.
является python предпочтительным языком для мобильных приложений для разработчиков? если да, то почему?
Нет, нет предпочтительного языка для разработки мобильных устройств. Каждая мобильная платформа имеет собственный поддерживаемый язык или набор поддерживаемых языков. Android запрограммирован в первую очередь на Java (хотя разработка в С++ и Python также поддерживается), а iPhone запрограммирован с помощью Objective-C. Общей темой в мобильном телефоне является реализация основных функций приложения как веб-службы, а затем реализация пользовательского интерфейса для конкретной мобильной платформы, которая является тонким клиентом для веб-службы. Хотя пользовательский интерфейс будет написан на любом языке (языках), поддерживаемом платформой, язык, который вы используете для веб-службы, может быть любым языком (ами) программирования, который вы выбрали для запуска на вашем веб-сервере. Если вы используете службу облачных вычислений, то это будут любые языки, поддерживаемые этой службой (например, если вы используете Google AppEngine, то Python и Java являются одновременно поддерживаемыми языками).
Нет. Python - отличный язык, но в нем нет ничего особо особого для развития мобильных устройств.