Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 23.02.2023
Сообщений: 53

Остановка функции при ошибке

06.04.2023, 09:06. Показов 858. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, есть две функции
Python
1
2
3
4
5
6
7
8
def func1(a,b):
    try:
        ...
    except Exception as err:
        print(err)
def func2():
       ...
       func1(a,b)
Вопрос в том, как мне остановить вторую функцию если в первой у меня срабатывает определенная ошибка, которая начинается вот так: 1062 (23000):
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.04.2023, 09:06
Ответы с готовыми решениями:

Pycharm остановка при ошибке
Всем привет. PyCharm 2020(Community edition) Не могу понять есть ли здесь возможность использовать остановку при возникновении...

Остановка дочернего процесса по его ошибке
В текущей директории имеется файл code.exe, которй принимает два числа и выводит их сумму. Например, скомпилированнй из такого: ...

Остановка функции при клике
Всем доброго дня, есть функция, которая каждые 2 секунды выводит сообщение; Как сделать так, чтобы функция вначале была неактивна, а...

11
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,667
Записей в блоге: 29
06.04.2023, 09:15
Reshaldo, бросай исключение в первой функции -вторая упадет если, не обработает
0
0 / 0 / 0
Регистрация: 23.02.2023
Сообщений: 53
06.04.2023, 09:24  [ТС]
Welemir1, Проблема в том, что мне нужно что бы бросалось именно при этой ошибке, при других код продолжал работать
0
 Аватар для s_t_r_a_j
526 / 179 / 58
Регистрация: 12.02.2023
Сообщений: 641
06.04.2023, 09:39
мне кажется все очень просто:

Python
1
2
3
4
5
6
7
8
9
def func1(a,b):
    try:
        ...
    except Exception as err:
        print(err)
        exit() # выход из функции
def func2():
       ...
       func1(a,b)
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
06.04.2023, 09:42
Цитата Сообщение от s_t_r_a_j Посмотреть сообщение
break() # выход из функции
Выход из функции будет и без этого бестолкового break
0
 Аватар для s_t_r_a_j
526 / 179 / 58
Регистрация: 12.02.2023
Сообщений: 641
06.04.2023, 09:47
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Выход из функции будет и без этого бестолкового break
ну как вариант выводить параметр, который можно проверить в следующей функции
Python
1
2
3
4
5
6
7
8
9
10
11
12
def func1(a,b):
    try:
        ...
    except Exception as err:
        print(err)
        bool_=True
        exit() # выход из функции
    return bool_
def func2():
       ...
       if func1(a,b)==True: exit()
       func1(a,b)
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
06.04.2023, 09:50
Цитата Сообщение от s_t_r_a_j Посмотреть сообщение
ну как вариант
Так себе вариант.
Welemir1 имел ввиду что-то типа
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def foo():
    try:
        pass
        # ...
    except Exception as e:
        # print('exception in foo')
        raise e
 
 
def bar():
    try:
        foo()
    except Exception as e:
        print('exception in bar')
 
 
bar()
0
0 / 0 / 0
Регистрация: 23.02.2023
Сообщений: 53
06.04.2023, 09:51  [ТС]
s_t_r_a_j, Это всё прекрасно, но допустим у меня может вылезти две разных ошибки, одна 1062, а другая 1063 и мне нужно выйти из второй функции именно при ошибке 1062
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
06.04.2023, 09:58
Reshaldo, что это за ошибки? Исключение какое?
0
0 / 0 / 0
Регистрация: 23.02.2023
Сообщений: 53
06.04.2023, 10:00  [ТС]
iSmokeJC, Вставляю данные в базу данных, 1062 это дубликат, как пример
1062 (23000): Duplicate entry 'cyberforum.ru' for key 'links.Article_Link'
а есть например неправильная вставка типов данных в базу данных
1292 (22007): Incorrect date value: '333' for column 'Date' at row 1
И при 1292 мне нужно чтобы код продолжался
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
06.04.2023, 10:04
Лучший ответ Сообщение было отмечено Reshaldo как решение

Решение

Вот.
Читай и отлавливай в except нужные тебе исключения
1
0 / 0 / 0
Регистрация: 23.02.2023
Сообщений: 53
06.04.2023, 10:43  [ТС]
iSmokeJC, Спасибо, разобрался
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.04.2023, 10:43
Помогаю со студенческими работами здесь

Возникают ошибке при вызове функции
Получить все шестизначные счастливые номера. Счастливым называется такое шестизначное число, что сумма его первых трех цифр равна сумме его...

[Pawn] Остановка на конечной точке, или остановка поворота при достижении заданного угла
Всем здравствуйте. У меня такой вопрос, реализация, по возможности более просто, остановка на конечной точке, или остановка поворота, при...

Что вернуть при ошибке для шаблонной функции?
Приветствую! Допустим, имеется шаблонный класс Vector. У этого класса имеется функция last(). T last() { ...

Сообщение об ошибке "Имя... не распознано как имя командлета, функции, файла сценария..." при вызове функции
Добрый день уважемые коллеги. Написал простой скрипт который мониторит создались ли файлы с сегодняшней датой. Проблема в том, что когда...

Остановка функции - c++
С помощью какой команды можно остановить функцию внутри другой функции с помощью оператора Switch. Если есть возможность поставить на паузу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru