flyzy博客
分享便宜VPS与网络优惠
搬瓦工

这个函数的返回值问题!

def count():
    fs = []     for i in range(1, 4):
        def f():
             return i*i
        fs.append(f)
    return fs

f1, f2, f3 = count()

如题,我理解f1,f2和f3应该都返回同样的结果,也就是[1,4,9]才对
可是,返回的是单值,9,不解,哪里理解错了呢?
谢谢各位大佬

河北省网友说:顶

福建省网友说:你要我解释我也解释不清楚
总之是指针和值的区别

陕西省网友说:这可是Python啊,非类C语言

云南省网友说:我现在想明白了

原因在于,f1,f2,f3 =[] 这样的表达方式是把 后者这个列表的对应项赋值给前面的
我一直不能理解,是因为我认为  f1,f2,f3 = ….
与  f1 = f2 = f3 =…这样的赋值语句相同了

靠,廖老师没讲list的这种赋值,搞得我想了好久好久

赞(0) 打赏
关注我们
未经允许不得转载:flyzy博客 » 这个函数的返回值问题!
分享到: 更多 (0)

这是一种鼓励

支付宝扫一扫打赏

微信扫一扫打赏