Have you noticed that in Mathematica you're not even able to make your own opaque data types? Only Wolfram has that ability.
Python is usable for actually writing software systems and algorithms. When a Mathematica code base grows over 10 lines, it becomes virtually unmaintainable in my experience.