Yes. I've been at companies serving millions of requests per hour with Python backends.
There are some gotchas to be wary of, and obviously running costs are higher than some other languages/runtimes, but the lower cost of project iteration and development still makes it worthwhile.
OTOH, because of the reputation of being easy to pick up, and thus tons of people murking around with it, you'll get all sorts of crappy code and developers with many years with Python, but no real experience writing production quality code.
I'm interested in what qualifies as good Python production quality code. Do companies typically address this through hiring practices, or specific training on production patterns? Or is it more about how the open-source Python packages are developed?
While there are some Python-specific idioms (like how you do parallelize and especially how do you iterate in large loops), it's mostly the same as with any other language.
All of those are checked in interviews, but can also be learned on the job if there are sufficiently experienced Python developers.
A clear give-away is if someone says they are doing scripting in Python (that usually means no testing, no CI or CD, no code style checkers, no typing...).
There are some gotchas to be wary of, and obviously running costs are higher than some other languages/runtimes, but the lower cost of project iteration and development still makes it worthwhile.
OTOH, because of the reputation of being easy to pick up, and thus tons of people murking around with it, you'll get all sorts of crappy code and developers with many years with Python, but no real experience writing production quality code.