* Python has clean and readable syntax that a complete beginner can understand -- it's really close to the pseudocode you might use for teaching.
* Python has a good standard library, so you can do a lot before you need to work out how to install more (and, reproducibility concerns aside, `pip install` is really simple once you get there)
* Because it was easy to pick up and easy to use for teaching, it took over some niches like stats in academia / data-analysis, where the people doing the work aren't professional programmers but just need something they can hack together. Once NumPy existed, people had minimal incentive to move away.
(Insert Marge Simpson "I just think it's neat" gif here.)