我想使用 return 从函数返回变量,然后调用相同的函数,但从 return 恢复。这可能吗?例子:def abc(): return 5 return 6var = abc() # var = 5###var = abc() # var = 6
3 回答

四季花海
TA贡献1811条经验 获得超5个赞
生成器示例:
def abc():
yield 5
yield 6
gen = abc()
var = next(gen) # var = 5
###
var = next(gen) # var = 6

翻过高山走不出你
TA贡献1875条经验 获得超3个赞
我认为您正在寻找发电机:
def abc():
yield 5
yield 6
gen = abc()
var = next(gen)
print(var)
var = next(gen)
print(var)

SMILET
TA贡献1796条经验 获得超4个赞
在 python 中返回一个值会终止函数的进程。重点是一旦完成,它就会返回一个值。也许尝试通过返回一个堆栈来解决您的问题 - 具有您需要的尽可能多的值,
def abc():
a = []
a.append(6)
a.append(5)
return a
var = abc().pop # var = 5
###
var = abc().pop # var = 6
添加回答
举报
0/150
提交
取消