Any language is a tool to solve certain kind of problems, so (if you allow me to slightly exaggerate) you are talking between which tool you should buy: a hammer or a screwdriver?
Every such selection will have pros and cons, so only you can decide which pros are more important for you.
But in common situation like yours, I would advice to go for Python, without any hesitation.
Both languages are similar in sense they are both dynamically typed with flexible data literals (as compared to Java) and both are widely used for web UI automation (which is more than just automated web regression testing).
Python has more wide use outside of web automation, for different tasks you may encounter around testing, for generic system administration tasks like moving files around, writing cron jobs, and just general text files parsing and manipulation, like generating test data.
Python is object-oriented (closer to Java) but not as object-obsessed as Java is (you can also program in procedural style, or functional if you want and need), but there are some subtle differences with Java too.