Не существует языка, который можно использовать "во всех направлениях". Каждый язык предназначен для определённого круга задач. Разные задачи - разные языки программирования.
Python - тихоходный скриптовый язык, предназначенный для непрограммистов. Основное его использование - написание примитивных типовых скриптов, передающих данные в библиотеку, написанную совсем другими людьми на совсем других языках и получающих из библиотеки готовый результат обработки. Именно так Python используют ML, DS и прочие математики с инженерами, являющиеся целевой аудиторией этого языка.
JavaScript - скриптовый язык, предназначенный для работы в браузере. Отличается крайней ненадёжностью и хрупкостью кода. Ошибиться и не заметить ошибку крайне просто, если наличие ошибки всё же обнаружится, найти её причину очень сложно. Хотя JS и был адаптирован для работы вне браузера (Node.JS, Deno), но в силу исходной заточенности под работу в браузере он хорошо подходит лишь для очень ограниченного подмножества задач, решаемых скриптовыми языками.