Можно ли весь код по умолчанию оборачивать в try/except и чем это грозит?
Надо учитывать 2 момента при написании try / except:Старайтесь писать блок try / except с конкретными ошибками - это позволит обрабатывать те ошибки, которые реально могут произойти. К примеру, Вы в ответе можете получить поле foo или не получить - почти наверняка данный код стоит обработать на KeyError.Использовать блок try / except без перечисления ошибок (пустой блок) стоит писать только тогда, когда Вы реально знаете зачем он. К примеру, Вы не знаете, какие ошибки могут произойти в коде, т.к. его много или он плохо написан или плохо спроектирован, но при этом, хотелось бы чтобы код не падал и работал дальше - да, тогда его стоит использовать. Но при таком случае, обязательно сделайте хороший логгинг или еррор репортинг админу внутри блока except.
Понятное жело, практика плохая. В основном из-за того, что у вас не будет оценки критичности возникшего исключения.
Обязательно следует указать except Exception, иначе вы словите то, что точно не следует ловить - напр команды прерывания работы программы.