Почему питону не помешала динамическая типизация?
Ты путаешь нестрогую типизацию с динамической. Да и дело не в этом. JS всегда работал криво и был слишком странным языком. Это вот, последние 5 лет он выбрался со дна - появился ES6, появился тайпскрипт и фронтендеры начали учиться программировать. Но даже при всем этом, в нормальный JS сложней вкатиться, чем в питон. Уж очень много изменений, какие-то вебпаки, npm, yarn, nodejs, deno, где-то import, где-то require. А после этого ещё TypeScript изучай. В питоне все просто - есть третий питон, есть нетретий питон. Ставишь джангу или fastapi, хуяк-хуяк и деплой.  

А производительность языка в разрезе веба несущественна, особенно с тех пор, как в питоне есть асинхронщина - все равно всегда упираешься в IO.
В действительности люди чаще используют то, что удобно им. Python все же более дружелюбен и начать программировать на нём немного, но легче, чем на js. В реальности на бэкэ довольно тяжело упереться в скорость работы, которую ограничивает язык ( иначе все бы писали на С ), поэтому, легко изучив питон, люди переходят на фласк или django ( сам лично встречал 2  таких людей, которые за пару месяцев изучения питона перешли на бэк)