<p>Python and C++ are the ones I hear from the theorist profs and grad students I talk to.</p>
<p>But “knowing languages” is a teensy-weensy, itty-bitty part of programming and knowing things like algorithms, data structures, design patterns (look it up), refactoring, good software engineering principles, etc. are far more important than learning a particular language.</p>
<p>Seriously. Especially since many languages ape each other’s syntax (C, C++, Java, and C# all have many syntactic similarities) I wouldn’t worry about picking the right language. You’ll use a variety of languages anyway. You may find one research group uses Python for everything, and another uses C++ or Java.</p>