Jupyter Notebook: как найти номер ячейки, с которой вызывается функция скрипта python? - PullRequest
1 голос
/ 08 января 2020

Предположим, у меня есть скрипт Python с именем my_script.py с одной функцией с именем my_func() внутри. Я импортирую этот скрипт в Блокнот Jupyter, чтобы я мог запустить my_func() в ячейках.

Мой вопрос, в определении my_func(), как найти номер ячейки, из которой он вызывается, так что Я могу войти номер клетки? Любой API, который я мог бы использовать?

Что-то вроде

# my_script.py

def my_func():
    # find which cell this is called from
    cell_number_called_from = some_IPython_history_class_api.get_current_cell()

    # log the cell number and do the rest of my things

1 Ответ

0 голосов
/ 09 января 2020

Следующий фрагмент javascript в ячейке вашего ноутбука Jupyter даст вам индекс этой ячейки:

%%javascript
var output_area = this;
// find my cell element
var cell_element = output_area.element.parents('.cell');
// which cell is it?
var cell_idx = Jupyter.notebook.get_cell_elements().index(cell_element);
console.log(cell_idx)
...