01Python控制流分类及使用规则
1.分类
Python 中的控制流语句和其他编程软件控制流相似。主要包含:
2.使用规则
控制流的使用非常频繁,使用规则如下:
02Python控制流具体使用说明
1.if分支
if分支是用来判别某个条件是否满足所对应的执行内容,常见的分支类型有二分支类型和多分支类型。
二分支语法:
if conditionl: expression1else: expression2
三分支语法:
if conditionl: expression1elif condition2: expression2else: expression3
关于上面的语法,有如下4点需要注意:
2.for循环
循环的目的:一般都是为了解决重复性的工作。
优点:如果使用循环的语法,代码简洁,避免重复性无意义代码。
经验:if分支和 for 循环常配合使用。
举例1:将列表中的每个元素做平方加1处理
# 将列表中的每个元素作平方加1处理list6 = [1,5,2,8,10,13,17,4,6]
result = []for i in list6: y = i ** 2 + 1 result.append(y)print(result)out:[2, 26, 5, 65, 101, 170, 290, 17, 37
注:
举例2:计算1到100之间的偶数和
# 计算1到100之间的偶数和s1_100 = 0for i in range(1,101): if i % 2 == 0: s1_100 = s1_100 + i else: passprint('1到100之间的偶数和为%s'%s1_100)out:1到100之间的偶数和为2550
注:
举例3:用更高效的列表表达式替代for循环
如果是对可迭代对象中的每一个元素做相同处理的话,不仅可以使用 for循环,还可以通过更简单的列表表达式完成。
对于列表表达式,可以写成如下语法:
[expression for i in iterable if condition]
# 对列表中的偶数作三次方减10的处理list7 = [3,1,18,13,22,17,23,14,19,28,16]result = [i ** 3 - 10 for i in list7 if i % 2 == 0]print(result)out:[5822, 10638, 2734, 21942, 408
注:
3.while循环
while循环与for循环有一些相似之处,有时两者可以互换,但while循环更适合无具体迭代对象的重复性操作。
举例:当你登录某手机银行APP账号时,一旦输入错误,就会告知用户还剩几次输入机会,其限定用户只能在 N 次范围内完成正确的输入, 否则当天就无法再进行用户名和密码的输入。从1到N就是for循环的具体迭代对象;
当你在登录某邮箱账号时,输入错误的用户名或密码,只会告知“您的用户名或密码错误”, 并不会限定还有几次剩余的输入机会,所以对于这种重复性的输入操作,对方服务器不确定用户将会输入多少次才会正确,对于while 循环来说, 就相当于一 个无限次的循环, 除非用户输入正确。
while 循环在Python 中的语法表达:
while condition: if conditionl: expression1elif condition2: expression2else: expression3
注:
03通过实例比较for循环与while循环
for循环:
# 使用for循环登录某手机银行APPfor i in range(1,6): user = input('请输入用户名:') password = int(input('请输入密码:')) if (user == 'test') & (password == 123): print('登录成功!') break else: if i < 5: print('错误!您今日还剩%d次输入机会。' %(5-i)) else: print('请24小时后再尝试登录!')out:请输入用户名:test请输入密码:111错误!您今日还剩4次输入机会。请输入用户名:test请输入密码:123登录成功!
while循环:
# 使用while循环登录某邮箱账号while True: user = input('请输入用户名:') password = int(input('请输入密码:')) if (user == 'test') & (password == 123): print('登录成功!') break else: print('您输入的用户名或密码错误!')out:请输入用户名:Excel知识管理请输入密码:111您输入的用户名或密码错误!请输入用户名:爱上深呼吸李强请输入密码:123您输入的用户名或密码错误!请输入用户名:test请输入密码:123登录成功!
注:
整体感觉:编程思想大同小异,如果你学习过C、C++、Java Script那肯定很有优势,或者哪怕只会VBA编程也没关系,知识迁移能力非常重要,类比着学习方能触类旁通。
读书笔记内容来源:刘顺祥,《从零开始学Python数据分析与挖掘》
作者公众号:数据分析1480