【发布时间】:2021-09-22 13:03:45
【问题描述】:
我想更新一个在函数外部定义的列表,如下所示:
import pandas as pd
list1=[]
list2=[]
list3=[]
def updatelist():
list1=['one','two','three']
list2=['1','2','3']
list3=['4','5','6']
df1=pd.DataFrame(list1)
df2=pd.DataFrame(list2)
df3=pd.DataFrame(list3)
当我尝试打印列表时,我看到的是空列表。该函数不更新列表值。
注意:定义执行某些计算来更新列表,并且不能在定义之外完成。
感谢任何帮助。提前致谢。
【问题讨论】:
-
你从来没有打电话给
updatelist? -
您分配给局部变量,而不是全局变量。
-
函数的第一行写
global list1, list2, list3。这将对全局变量进行后续分配,而不是创建新的局部变量。 -
更好地使用
return list1, list2, list3和更高版本的list1, list2, list3 = updatelist()
标签: python list function definition