Python 中的闭包(2)—— 一个栗子

本文介绍了一个使用Python闭包实现的独立计数器。通过定义一个外部函数new_counter,内部返回一个count函数来实现每次调用时计数值递增,并保持各自的状态独立。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

In [120]: def new_counter():
     ...:     i = 0
     ...:     def count():
     ...:         nonlocal i
     ...:         i += 1
     ...:         return i
     ...:     return count
     ...:

In [121]: a_count = new_counter()

In [122]: b_count = new_counter()

In [123]:

In [123]: a_count()
Out[123]: 1

In [124]: a_count()
Out[124]: 2

In [125]:

In [125]: a_count()
Out[125]: 3

In [126]: a_count()
Out[126]: 4

In [127]: b_count()
Out[127]: 1

In [128]: b_count()
Out[128]: 2

In [129]: b_count()
Out[129]: 3

它们是独立的两个计数器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值