The answer to your question about which is more powerful depends of the intended application. Both are very complete and resourceful. Python has a less pronounced learning curve and it is a language one can love, because of its beauty. Java does some things better than python, as multi-threading.