a = pd.DataFrame()
def fuc(a):
a = a.append({'1':1})
return
fuc(a)
结果 a 还是空的 df
求提示
def fuc(a):
a = a.append({'1':1})
return
fuc(a)
结果 a 还是空的 df
求提示
1
xiaolinjia Jun 11, 2020
答案是此 a 非彼 a 。你分清全局变量和局部变量再说吧。
答案是用 global |
2
flgn88 Jun 11, 2020 楼上说的 global 是可以解决楼主的问题。
不过一般不太建议直接在函数里修改全局变量,返回修改后的变量比较好一些。 |
3
renmu123 Jun 12, 2020 via Android 用 global 是个坏习惯,可以在函数中返回 a,再把函数值赋值给 a
|
4
fasionchan Jun 12, 2020 把 a = pd.DataFrame() 定义在 global 本身就是一个不好的编程习惯,一般将它封装在类或者闭包中,除非你只是临时写一写
|
5
yellowtail OP 感谢回答,最后类和闭包都不熟悉,还是用 global 解决了。。。
|