Ошибка выдается при делении на ноль. Вы выполняете операцию деления, когда создаете свой список «prelist», который выполняется вне вашей попытки / кроме. Переместите создание prelist в try (это легче понять, если вы используете для l oop вместо понимания списка):
prelist = []
for b,m in zip(prec, res):
try:
prelist.append(float(b) / float(m))
except ZeroDivisionError:
prelist.append(0)
Другое решение состоит в добавлении оператора if / else в понимании списка к учетной записи. для деления на ноль.
prelist = [float(b) / float(m) if m != 0 else 0 for b,m in zip(prec, res)]