Для back-end понадобится ещё и SQL - в обязательном порядке, независимо от используемого языка программирования.
Да, на back-end используются разные языки, но более 80% сайтов во всём мире сделаны именно на PHP.
Менять PHP на Python не имеет смысла: Python, по сравнению с PHP, не даст ничего: Python медленнее, для задач back-end менее удобен, в Python отсутствует типизация, повышающая надёжность кода.
Но вот взять в пару к PHP компилируемый высокопроизводительный язык (для всяческих web-api и внутренних сервисов) - это имеет смысл. И здесь лучший вариант - Go (Java и C# намного больше и сложнее). Вместе PHP + Go покрывают практически весь спектр задач back-end.
P.S. В любом случае, к языку back-end понадобится ещё и back-end фреймворк: никто, кроме насмотревшихся ютуба неучей, не пишет back-end на голом языке. И здесь PHP (имеющий множество высококачественных фреймворков на любой вкус) тоже выигрывает у Python.
"Для бэкенда всё то же самое + PHP" ==>
А вот и нет. CSS в бэкенде точно не нужен, а JS в чистом виде на сервере не работает. На сервере можно запустить Node.js, но тогда выпадает PHP, это будет полная замена