在同一个函数中引用局部变量
Referencing local variable within the same function
我想使用函数合并 2 个 DataFrame。
该函数在使用变量 'x=1' 调用时创建 DataFrame df1,然后在使用 'x != 1' 调用时创建另一个 df2,基于函数中的 if 语句 - 为了进一步清楚起见,下面的代码片段。
到达“df3 = pd.concat”行后,我收到错误“UnboundLocalError:赋值前引用的局部变量'df1'””。
我想了解如何实现将df1和df2拼接成df3的结果。
def Concat(url, x):
if x == 1:
df1 = pd.read_json(url)
else:
df2 = pd.read_json(url)
df3 = pd.concat([df1, df2], ignore_index=True)
def main():
Concat('*url*', 1)
Concat('*url*', 2)
你应该稍微调整一下,成为:
def Concat(url, x):
for i in x:
if i == 1:
df1 = pd.read_json(url)
else:
df2 = pd.read_json(url)
df3 = pd.concat([df1, df2], ignore_index=True)
def main():
Concat('*url*', [1, 2])
我想使用函数合并 2 个 DataFrame。 该函数在使用变量 'x=1' 调用时创建 DataFrame df1,然后在使用 'x != 1' 调用时创建另一个 df2,基于函数中的 if 语句 - 为了进一步清楚起见,下面的代码片段。
到达“df3 = pd.concat”行后,我收到错误“UnboundLocalError:赋值前引用的局部变量'df1'””。
我想了解如何实现将df1和df2拼接成df3的结果。
def Concat(url, x):
if x == 1:
df1 = pd.read_json(url)
else:
df2 = pd.read_json(url)
df3 = pd.concat([df1, df2], ignore_index=True)
def main():
Concat('*url*', 1)
Concat('*url*', 2)
你应该稍微调整一下,成为:
def Concat(url, x):
for i in x:
if i == 1:
df1 = pd.read_json(url)
else:
df2 = pd.read_json(url)
df3 = pd.concat([df1, df2], ignore_index=True)
def main():
Concat('*url*', [1, 2])