三种循环语句有什么相同之处和不同之处?
for,while和do...while循环都是需要满足条件才执行,不同的是do...while循环不管条件是否满足都会执行循环体一次先,也就是for和while是先判断条件是否满足,满足条件在执行循环体;而do...while则是先执行循环体后判断条件是否满足;3种循环是可以相互转换的。
For循环可以遍历任何序列的项目,比如说字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素。
While循环会一直执行它下面的代码片段,直到它对应的布尔表达式为false时才会停下来。具体来讲,while循环所作的和if语句类似,也是去检查一个布尔表达式的真假,不一样的是它下面代码片段不是只被执行一次,而是执行完成后再调回带while所在的位置,如此重复进行,直到while表达式为false为止。
For循环和while循环的区别:
对比for循环和while循环,我们不难发现,两者在使用else上有很大区别。
如果else语句和while循环语句一起使用,则当条件变成false时,就执行else语句。如果else语句和for循环语句一起使用,else语句块只在for循环正常终止时执行。
另外for循环和while循环的循环次数有很大不同。前者取决于数据包含的元素个数,后者取决于条件何时为false。而在循环取值方面,for循环比while循环要强大,所以如果遇到循环取值的场景,就应该用for循环。但是另一方面,for循环只能对某种事物的集合做循环,而while可以进行任何种类的循环,不过while循环很容易发生错误。