#azure-databricks
#azure-блоки данных
Вопрос:
Я попробовал sys.exit(0)(код Python) и dbutils.notebook.exit() в Databricks notebook. Но оба варианта не сработали. Пожалуйста, предложите любой другой способ остановить выполнение кода после определенной ячейки в Databricks notebook.
Комментарии:
1. вызвать исключение?
2. @AlexOtt Я пробовал это, но это тоже не работает. попробуйте: if(df.shape[0]==0 и df_1.shape[0]==0 и df_2.shape[0]==0): print(‘Остановить исключение здесь’) dbutils.notebook.exit(‘остановить’) else: передать, кроме: print(‘ex’)
3.
dbuilts.notebook.exit()
используется, когда записная книжка вызывается из другой записной книжки, а не когда она выполняется в интерактивном режиме. Просто используйтеraise Exception("exit")
вместо этого…4. @AlexOtt Можете ли вы предоставить код вместо этого. Это будет полезно.
5. Я написал это — это просто наличие
raise
Ответ №1:
dbutils.notebook.exit()
не работает, потому что вам нужно указать строковый аргумент, без него происходит сбой. Чтобы это сработало, вы должны написать что-то вроде:
dbutils.notebook.exit("whatever reason to make it stop")
Комментарии:
1. хотя верно, что другой ответ показывает использование
.exit()
, этот ответ добавляет, что если вы не передадите строковый аргумент, вызов завершится без сбоев. Возможно, этот ответ мог быть комментарием к другому ответу.
Ответ №2:
Просто используйте это. И нажмите на кнопку запустить все ячейки в Databricks notebook. Если условие выполнено, выполнение будет остановлено. Сработало для меня.
if (df.shape[0]==0): dbutils.notebook.exit('stop')