Python 在函数中创建数据帧

Python 在函数中创建数据帧,python,pandas,function,dataframe,data-structures,Python,Pandas,Function,Dataframe,Data Structures,对于脚本,我需要在脚本的开头创建dict、列表和数据帧。为此,我愿意: df4 = pd.DataFrame() object_dict = {} caption = [] 因为有很多不同的数据帧,我想将其放入如下函数中: def create_data_objects(): df4 = pd.DataFrame() object_dict = {} caption = [] 但是如果我这样做,我会得到“NameError:name'df4'未定义”,因此数据帧没有创建。有没有办

对于脚本,我需要在脚本的开头创建dict、列表和数据帧。为此,我愿意:

df4 = pd.DataFrame()
object_dict = {}
caption = []
因为有很多不同的数据帧,我想将其放入如下函数中:

def create_data_objects():
  df4 = pd.DataFrame()
  object_dict = {}
  caption = []

但是如果我这样做,我会得到“NameError:name'df4'未定义”,因此数据帧没有创建。有没有办法将其放入函数中并使我的代码更加精简?

当您在函数中创建对象时,它们的作用域在函数结束时结束

你可以考虑这样做:

def create_data_objects():
  df4 = pd.DataFrame()
  object_dict = {}
  caption = []
  return df4, object_dict, caption

def MAIN_FUNCTION():
  df4, object_dict, caption = create_data_objects()


非常感谢你!