为了账号安全,请及时绑定邮箱和手机立即绑定
关注
Sherlockyang

为什么我的运行不出来?

按照示例中的程序运行的都是9,但是我的运行会是这个结果

程序:

def C():

    fa= []

    for i in range(1, 2, 3, 4):

        def f():

            return i * i

        fa.append(f)

    return fa

A = C()

print(A)

运行结果:

http://img1.mukewang.com/5d6e3d6c0001ff0914780090.jpg

但如果是fa.append(f())

的结果就是1,4,9

就是没有得到都是9的结果

2019-09-03 源自:python进阶 2-9 143 浏览 2 回答

最佳回答

2019-09-03

def C():

    fa= []

    for i in range(1,4):

        def f():

            return i * i

        fa.append(f)

    return fa

A,B,D= C()

print(A(),B(),D())

 看这个,C()返回的是三个函数组成的list     你可以用A,B,D三个变量去接C的返回值然后分别调回ABD这三个函数


回复 0

Sherlockyang (提问者)

我试过,但是值不是9

#1 2019-09-08 回复

def C():

    fa= []

    for i in range(1,4):

        def f():

            return i * i

        fa.append(f)

    return fa

A,B,C= C()

print(A,B,C)


2019-09-03
回复 0

Peppa_

失误,点错了,不好意思

#1 2019-09-03 回复

举报

0/150
提交
取消
意见反馈 邀请有奖 帮助中心 APP下载
官方微信