loop and a half

在书中看到loop-and-a-half这个词,字面意思是“循环和一半”,到底是什么意思呢?
其实就是使用break语句跳出循环,而不是在循环的头部跳出。这样就不是完整的执行了整数个循环,最后一个循环只执行了一半就遇break跳出了。这是个人的理解。
为什么要使用loop and a half?
看一个例子。

a = input('type a string or ENTER to quit')
while a:
    print(a.upper())
    a = input('type a string or ENTER to quit')

这段代码使用while判断是否进入循环,导致必须在while语句之前读取a,造成代码重复。
loop and a half 的风格如下

while True:
    a = input('type a string or ENTER to quit')
    if not a:
        break
    print(a.upper())

使用break语句可使代码更简洁,与循环相关的代码都在循环体内,也没有代码重复。

如今,这看起来平平无奇,但是据说在强调结构化编程的年代,使用break是不被推荐,第一种编程风格被认为是更好的选择。
个人猜测,是因为对goto的恐惧导致对break的偏见。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值