我有一个创建两个数据帧的函数。实际的例子比较大,但让我们这样说:
def createDataFrames()
df1 = pd.DataFrame(['Tag 1', 'Tag2'], columns=['Tag'])
df2 = pd.DataFrame(['Tag 3', 'Tag4'], columns=['Tag'])
return(df1)
return(df2)
现在我假设我可以像这样存储数据框
df1, df2 = createDataFrames()
但是这给了我以下错误:
Traceback (most recent call last):
File "/Users/marcvanderpeet/contexta-misc-python-scripts/tag_prediction/test13.py", line 11, in <module>
df1, df2 = createDataFrames()
ValueError: need more than 1 value to unpack
对这里出了什么问题的想法?
答案 0 :(得分:7)
你需要返回一个对象,一个元组,而不是:
return df1, df2
(逗号使df1, df2
成为具有两个元素的元组对象。)
return
在那里结束一个函数然后;没有多个return
语句的概念,因此第二个return(df2)
根本就不会被执行。
另请注意,return
是一个声明,而不是一个函数。你不需要括号。