I'd say go with Python - but knowing Ruby would be good if you plan on toying with Metasploit Modules. Python also has some weight in the industry right now. I look around for programming jobs sometimes (being a software major), and some folks actually want Python background.
With Python, I've seen some beautiful stuff done involving networking (just take a look at some of the scripts in BackTrack for starters). Where I personally saw the real power of Python was in the Penetration Testing with BackTrack course, where the OffSec guys had developed a few python scripts which simulated Real-Live environments. To not be so vague about this, in the labs I often came across a couple of the machines I compromised having scripts that would be used to simulate a user checking his/her e-mail, visiting web pages, etc.
Also, hanging out on MaXe's site Intern0t
and participating in their, 'Write a Program' challenges, I've noticed a lot of guys using Python and can get code done quicker and a lot more efficient!
If your going to look into networking, I'd say don't count Python out. The 'bad feeling' you get from Java is odd. Java has a lot of market value, it's portable across OS's and has great features in the java.net libraries that you could use to write some sweet tools.
Either route you go, your going to get closer in picking up on syntax from each language. Both languages have similar syntax so which ever one you favor you have nothing to lose when going back and learning the other.