Глобальная переменная не читается в функции и во вложенном цикле ⇐ Python
Глобальная переменная не читается в функции и во вложенном цикле
Я определяю эталонный фрейм данных следующим образом:
импортировать панд как pd импортировать sqlalchemy ref_df = pd.read_sql_query("select * from sql_table",con) # только 2 столбца ref_df = pd.DataFrame({'col1':[1,2,3,4], 'col2':['a','b','c','d']}) # пример стиля данных затем есть функция (соответствующая часть), которая ссылается и обновляет ref_df. Это на третьем уровне вложенного цикла:
def update(data,con): глобальный ref_df распечатать ref_df.shape Я получаю следующую ошибку:
print(ref_df.shape) NameError: имя «ref_df» не определено. Вы имели в виду: «ref_dict»? Я безуспешно пытался воспроизвести ошибку в этом примере:
импортировать панд как pd импортировать случайный строка импорта df = pd.DataFrame({'col1':[1,2,3,4], 'col2':['a','b','c','d']}) защита blah2 (new_df): глобальный df печать (df.shape) new_keys = список (набор (new_df.col2) - набор (df.col2)) new_starting_value = max(df.col1)+1 new_data_df = pd.DataFrame({'col1':range(new_starting_value,new_starting_value+len(new_keys)),'col2':new_keys }) df = pd.concat([df,new_data_df]) дф для я в [1,2]: для j в [1,2]: для k в [1,2]: blah2(pd.DataFrame({'col1':[random.randint(0,100)], 'col2':[random.choice(string.ascii_letters)]})) дф поскольку ref_df был определен в начале, я не считаю, что это проблема. В чем может быть еще одна потенциальная проблема?
Я определяю эталонный фрейм данных следующим образом:
импортировать панд как pd импортировать sqlalchemy ref_df = pd.read_sql_query("select * from sql_table",con) # только 2 столбца ref_df = pd.DataFrame({'col1':[1,2,3,4], 'col2':['a','b','c','d']}) # пример стиля данных затем есть функция (соответствующая часть), которая ссылается и обновляет ref_df. Это на третьем уровне вложенного цикла:
def update(data,con): глобальный ref_df распечатать ref_df.shape Я получаю следующую ошибку:
print(ref_df.shape) NameError: имя «ref_df» не определено. Вы имели в виду: «ref_dict»? Я безуспешно пытался воспроизвести ошибку в этом примере:
импортировать панд как pd импортировать случайный строка импорта df = pd.DataFrame({'col1':[1,2,3,4], 'col2':['a','b','c','d']}) защита blah2 (new_df): глобальный df печать (df.shape) new_keys = список (набор (new_df.col2) - набор (df.col2)) new_starting_value = max(df.col1)+1 new_data_df = pd.DataFrame({'col1':range(new_starting_value,new_starting_value+len(new_keys)),'col2':new_keys }) df = pd.concat([df,new_data_df]) дф для я в [1,2]: для j в [1,2]: для k в [1,2]: blah2(pd.DataFrame({'col1':[random.randint(0,100)], 'col2':[random.choice(string.ascii_letters)]})) дф поскольку ref_df был определен в начале, я не считаю, что это проблема. В чем может быть еще одна потенциальная проблема?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Глобальная переменная или переменная передачи в PHP? (производительность)
Anonymous » » в форуме Php - 0 Ответы
- 29 Просмотры
-
Последнее сообщение Anonymous
-