If you intend to perform data analysis or apply statistical tests on researches on the topics mentioned, R is enough precisely because it contains everything you will need for hypothesis testing and graphing, for example, in its libraries.
If besides applying data analysis / statistical tests to a research, you intend to develop software to automate and make the analysis possible, allowing the visualization of the results through a web interface, I would recommend Python, since in R the development in this sense is more complicated. Python has very good web development framweorks, as well as a number of data analysis / statistical testing libraries that can be easily used in conjunction with these frameworks.
Simply put: for scientific research, use R; if you intend to go beyond scientific research, use Python.
It might give you guidance if you scan through the scientific literature of climatology and hydrology in webofknowledge.com and do a mini-analysis of the number of times R and python are mentioned in these papers. I guess R is used more often, although it does not necessarily mean that it is the best for conducting such research. I think Victor Diogho Heuer de Carvalho is absolutely right about the purpose-specific selection of the language/software.