1. if, else, elif
2. while
1 # 猜年龄,3次机会 2 3 _age = 25 4 count = 1 5 6 while True: 7 print('count:', count) 8 age = int(input('input age: ')) 9 if age == _age: 10 print('Right!!!') 11 break 12 elif age > _age: 13 print('Think smaller') 14 else: 15 print('Think bigger') 16 count += 1 17 if count > 3: 18 print('Idiot!!!') 19 break
while else
1 while count <= 3: 2 print('count:', count) 3 age = int(input('input age: ')) 4 if age == _age: 5 print('Right!!!') 6 break 7 elif age > _age: 8 print('Think smaller') 9 else: 10 print('Think bigger') 11 count += 1 12 else: #如果while条件不成立执行此处 13 print('Idiot!!!')
3. for
1 for count in range(3): 2 print('count:', count + 1) 3 age = int(input('input age: ')) 4 if age == _age: 5 print('Right!!!') 6 break 7 elif age > _age: 8 print('Think smaller') 9 else: 10 print('Think bigger') 11 count += 1 12 else: #如果while条件不成立执行此处 13 print('Idiot!!!')
注:
当循环正常结束时,循环条件不满足, else
被执行;
当循环被 break
结束时,循环条件仍然满足, else
不执行。
1 values = [7, 6, 4, 7, 19, 2, 1] 2 for x in values: 3 if x <= 10: 4 print 'Found:', x 5 break 6 else: 7 print 'All values greater than 10'
out:Found: 7
4. break, continue
break:跳出当前循环
continue:跳过循环中的余下步,进行下次循环
5. 列表推导式
1. 常规列表生成方式
values = [10, 21, 4, 7, 12] squares = [] for x in values: squares.append(x**2) print squares
out:[100, 441, 16, 49, 144]
2.列表推导式
values = [10, 21, 4, 7, 12] squares = [x**2 for x in values] #列表推导式 squares = [x**2 for x in values if x <= 10] #带条件 square_set = {x**2 for x in values if x <= 10} #生成集合 square_dict = {x: x**2 for x in values if x <= 10} #生成字典