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的偏见。

原创文章 6 获赞 4 访问量 634

猜你喜欢

转载自blog.csdn.net/zhakngye/article/details/105059463