And I would say that this is because of the language's syntax & semantics. Pythonic code looks like pseudocode, aka business logic.
There is very little boilerplate, and libraries are designed to hide what little there is.
So this means that mathematicians who hate verbosity can read and write their algorithms with little cognitive overhead.
Then you start to get the network effect where libraries are implemented or wrapped in Python, and people use those and start adding abstractions etc. The two main deep learning libraries (TensorFlow and PyTorch) are there, and those have huge gravity wells.