Я работаю над тетрадью Jupyter для моей магистерской работы, и я бы хотел, чтобы она была чистой. Я использую множество функций для назначения категорий группам данных. Поэтому я решил поместить все эти функции в модуль functions.py, который я импортирую в начале своего ноутбука. Мой блокнот имеет следующий импорт:
import sys
sys.path.append('../src/') # ugly hack to be able to import the functions module
import re
import numpy as np
import pandas as pd
import seaborn as sns
import functions as fn
Одна из моих функций использует модуль re для сопоставления строк с регулярным выражением. Когда я вызвал упомянутую функцию, я получил NameError: ("name 're' is not defined", 'occurred at index 0')
, поэтому я решил, что мне нужно import re
в начале моего файла functions.py. Это ничего не изменило. Поэтому я даже попытался поместить import re
в тело функции, но это тоже не сработало бы.
Я абсолютно не знаю, почему re не работает, несмотря на попытки импортировать его везде.
Примечание: мои функции работали правильно, когда я определял и использовал их из записной книжки, поэтому я точно знаю, что это не ошибка в моей функции.