函数
def a(a1):
def b(b1):
print(b1)
def c(c1):
ss=2
print(ss)
return c
returnb
按照上述的代码 我要打印出c里面的数据 我应该如何修改呢
要打印出c里面的数据,需要先调用函数b,然后在函数b返回的函数c中打印数据。可以按照以下方式进行修改:
def a(a1):
def b(b1):
print(b1)
def c(c1):
ss = 2
print(ss)
print(c1)
return c
return b
# 调用函数a和b,并传入相应的参数
f = a(1)(2)
# 调用返回的函数c,并传入参数
f(3)
在上面的代码中,`a(1)`调用函数a,返回函数b,`a(1)(2)`调用返回的函数b并传入参数2,返回函数c并赋值给变量f。然后,调用函数f并传入参数3,这将触发函数c的执行,并输出2和3。 本帖最后由 歌者文明清理员 于 2023-4-28 12:46 编辑
def c(c1):
ss = 2
print(ss, c1, sep='\n')
b = a(1) #get b
c = b(2) #get c; output: 2
c(3)#output:2;3 isdkz 发表于 2023-4-28 12:23
要打印出c里面的数据,需要先调用函数b,然后在函数b返回的函数c中打印数据。可以按照以下方式进行修改 ...
def a(a1):
def b(b1):
print(b1)
def c(c1):
ss = 2
print(ss)
print(c1)
return c
return b
# 调用函数a和b,并传入相应的参数
f = a(1)(2)
# 调用返回的函数c,并传入参数
f(3)
这个返回的结果为什么有 3 ? tengke 发表于 2023-4-28 14:15
def a(a1):
def b(b1):
print(b1)
在上述代码中,调用返回的函数`f`时传入了参数`3`,这个参数被传递到了函数`c`的内部。在函数`c`的内部,首先打印了变量`ss`的值,即`2`,然后又打印了传入的参数`c1`的值,即`3`。因此,最终的输出结果中包括了`2`和`3`两个数字。如果你不希望输出`3`,可以将函数`c`的打印语句修改为只输出变量`ss`的值。
页:
[1]