1/ Le code python fonctionne sur toutes les plateformes où l'on trouve un interpréteur. Cela veut dire que le code (fichier .py) est identique quelle que soit la plateforme ciblée à part certaines fonctions relatives au système sous-jacent et précisées dans la documentation officielle.
L'interpréteur le plus utilisé est le C-Python, il existe également Jython (interpréteur en java). Sur la page officielle, on trouve les binaires pour les systèmes d'exploitation "classiques". Pour les *nix (unix-like), les *bsd (bsd like) et les *nux (linux-like), les binaires font partie des paquets des distributions respectives. Il est aussi possible de récupérer le code source en C (tarballs ou svn) et de le compiler soi-même.
2/ Rapidement, face à C/C++ il permet de s'affranchir de la gestion mémoire, d'écrire un code compact et lisible et vient de base avec une collection de modules couvrant un vaste domaine d'applications. Par contre commme tout langage interprété, il est plus lent qu'un langage compilé. D'où l'intérêt des modules écrits en C/C++/Fortran pour la rapidité d'exécution. Voir Extending Python :
http://docs.python.org/ext/ext.html
Face à java : je ne pratique pas trop, pour moi java il faut encore compiler (le bytecode) et je préfère python. ce n'est que mon avis.
3/ Pour les jeux :
http://pygame.org/news.html