Parlando di Python, nel mondo scientifico (Dove lavoro) e' diventato dominante.
Il motivo e' la sua flessibilita'.
Python e' lento, a volte lentissimo, *ma* ti permette di scrivere codice funzionante in fretta. Se devi scrivere qualcosa nell'immediato per testare ipotesi, produrre grafici, fare data munging etc. riesci a farlo ~10x piu' velocemente rispetto ad un C++ per esempio. Poi questo lo paghi (potenzialmente) nella velocita' di esecuzione del codice, ma solo se si tratta di qualcosa estremamente pesante a livello di risorse.
Il motivo tecnico e' che in Python non dichiari i tipi, quindi quando scrivi a + b, python deve controllare cosa e' a, cosa e' b e se c'e' un'operazione definita tra i due. In C invece devi dire prima cosa sono e quindi l'operazione di somma e' gia' definita. Questo fa esplodere i tempi di computazione potenzialmente.
Pero' questo diventa un problema *solo* se ti trovi a runnare il codice piu' e piu' volte, quindi hai tutto il tempo, a posteriori, di ripensare il codice *se* serve. Dopotutto premature optimization is the root of all evil.
Inoltre, essendo Python scritto in C, puoi sempre capire dove ci sia il cono di bottiglia e riscrivere la funzione in C (Cython, snap) o usare strumenti "magici" come numba e renderla estremamente piu' efficiente.
In pratica, a livello di ricerca e di data science, Python e' l'equivalente di un coltellino svizzero on steroids. Lo puoi usare praticamente per qualsiasi utilizzo non estremo e anche in quei casi puoi fare un accrocchio per renderlo quasi paragonabile agli strumenti ad hoc disponibili sul mercato.