Python学习第九篇——while和for的区别

1 pets = ['dog','cat','dog','goldfish','cat','rabbit','cat']
2 print(pets)
3 for pet in pets:
4     print(pet)
5 #------------------------------------------
6 pets = ['dog','cat','dog','goldfish','cat','rabbit','cat']
7 print(pets)
8 while pet in pets:
9     print(pet)

上述代码都想打印列表中的所有元素:

1-4行的代码,采用for结构进行打印,无问题

6-9行代码,采用while结构进行打印却会报错。报错的原因是pet未定义

c语言中for循环和while的作用可以完全一样。但在Python中,却不同,第六行代码显示 pet未定义,思考while执行的逻辑,我们可以得出结论:while更强调:while a ,如果a 逻辑正确,则循环执行下列语句,因此,while的核心在于:while a ,其中a=True.则下列语句在a=True的条件下循环执行。

因此,pet是未被定义的“变量",因此无法判断逻辑的正确性。因此while 后面跟的语句,一定是逻辑可判断True或者False的才能执行。

posted @ 2018-08-14 11:02  少年π  阅读(4169)  评论(1编辑  收藏  举报