Python is a better language than Java overall, but Java has some advantages over Python: because of static typing it is faster and has a very good IDE support. (autocomplete, code navigation, refactoring, etc...) In my eyes the most superior languages have static typing with a clever type inference, so that the code remains concise despite static typing. I like Scala because it really has the best of all worlds. (Although really mastering it is a bit more work than mastering Java or Python.)
Comments
Python is a better language than Java overall, but Java has some advantages over Python: because of static typing it is faster and has a very good IDE support. (autocomplete, code navigation, refactoring, etc...) In my eyes the most superior languages have static typing with a clever type inference, so that the code remains concise despite static typing. I like Scala because it really has the best of all worlds. (Although really mastering it is a bit more work than mastering Java or Python.)
It's the other way around. Java has good IDE support because it's too annoying to write Java applications without an IDE. Java needs IDE support.
On the other hand, python is so pleasant you can develop big applications without any IDE support, just good old vim with ctrl-p word completion.