• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

看完这个你就恍然大悟了

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


f1, f2, f3= count()
print f1(), f2(), f3()


很多人,对于f1, f2, f3= count()这一句很疑惑。这句话的意思是把count()返回的list中的三个值分别赋给f1,f2,f3
而不是把count返回的list分别赋给f1f2f3.
我一开始也烦了这样的毛病,原因就是Java、C#、C++语音留下的思维定式。
f1, f2, f3= count()这一句等价于
a,b,c=[1,2,3]此时a=1,b=2,c=3只是把list中的值分别取出来。如同for key,value in {'key',vaule}一个道理。哎不知道说的明白不?!!!

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

发新帖

发布任务需求已有1031167位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!