引言
本文主要介绍一下 Python 的 for while 循环语句的使用,其中容易忽略的一个细节就是循环中 else 的使用,更多 Python 基础系列文章,请参考 Python 基础知识大纲
内容提要:
- For 循环
item 循环
index, item 枚举循环
index 循环 - in 操作
- Comprehensions 推导式迭代
- While 循环
- break 终止循环
- Continue 跳过本次循环
- 循环中的 else
For 循环
明确循环的次数用 For 循环
item 循环
用于有序和无序的集合对象:
举例:
index, item 枚举循环
仅用于有序集合
举例:
index 循环
仅用于有序集合,一般不用。
举例:
in 操作
用于判断对象是否存在于某容器对象中,返回布尔值。
举例:
Comprehensions 推导式迭代
List:
Set:
Dict:
Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值。default – 如果指定键的值不存在时,返回该默认值。
dict.get(key, default=None)
While 循环
用于不能明确循环次数
举例:
input_str = ' '
while input_str != 'Quit' and input_str != 'Exit':
input_str = input('Enter your name or type Quit or Exit:\n')
input_str = input_str.title()
print ('\tYou entered: ' + input_str)
break 终止循环
for
while
Continue 跳过本次循环
循环中的 else
如果循环中没有遇到 break 语句,将会执行 else 语句快。这个非常有用,当我们执行一个搜索,但是没有可接受的值被找到,我们需要抛出一个信息。
例如: 判断集合中是否存在负数
当没有找到任何一个负数时,不会触发 break 语句,所以会执行 else 中的语句。
当找到一个负数时,触发 break 语句,结束循环,不会执行 else 中的语句。
Code:
number_set = set (range(1, 6))
# number_set = [1,3,-2,4,5]
print ('\n\tSet of numbers: ' + str(number_set))
positive_flag = True
for num in number_set:
if num < 0:
print ('\tFound a negative number: {}'.format(num))
break
else:
print ( '\tNumber is still positive...')
positive_flag = False