Python基础 -- 流程控制语句

Python基础 -- 流程控制语句
ps主播是java转python的逻辑重合地方所以笔记会比较简洁流程控制语句ifif-elsewhilefor还有嵌套语句逻辑方面都和Java相同重点是书写格式的不同我就不文字展示了直接看例子啦。一、If 语句1、if...else...语句if 判断条件条件成立要做的操作else条件不成立要做的操作python是根据缩进来描述代码归属的所以if代码块的地方要有4个空格缩进Tabnum int(input(请输入你的分数)) if num 700 and num 750: print(恭喜你进入清华) else: print(分数不够不能进入清华)2、if...elif...语句if 判断条件1条件1成立要做的操作elif 判断条件2条件2成立要做的操作else 以上条件都不成立要做的操作#根据输入用户名、密码登陆系统 #用户名、密码为 admin/666888或root/547527或wangwu/123456,则输出登陆成功或者提示用户名或密码错误 username input(Enter your username: ) password input(Enter your password: ) if username admin and password 666888: print(登陆成功) elif username root and password ! 547527: print(登陆成功) elif username ! wangwu and password ! 123456: print(登陆成功) else : print(用户名或密码错误)3、案例#给出三条边判断等否构成三角形或等边三角形、等腰三角形、普通三角形 a int(input(请输入一条边长)) b int(input(请输入一条边长)) c int(input(请输入一条边长)) if a b c and b c a and c a b: if a b and b c : print(此三角形为等边三角形) elif (a b or b c or a c) : print(此三角形为等腰三角形) else : print(三条边只能构成普通三角形) else : print(3条边不能构成三角形)二、模式匹配match...case...num1 float(input(Enter a number: )) num2 float(input(Enter a number: )) oper input(Enter operation: ) match oper: case : print(f{num1} {num2} {num1 num2}) case -: print(f{num1} - {num2} {num1 - num2}) case *: print(f{num1} * {num2} {num1 * num2}) case /: print(f{num1} / {num2} {num1 / num2}) case _: print(f没有这个符号{num1}和{num2}不能进行运算)三、循环1、while循环while 条件表达式循环语句1循环语句2......else循环正常结束时进行的操作可选#计算1~100之间所有偶数的累加之和 count 1 #num计数器 total 0 while count 100 : if count %2 0: total count count 1 print(f1~100之间所有偶数的和是:{total})2、for 循环重点新知识rang语句for 元素 in 要处理的数据集循环体代码语句else循环结束时要处理的语句可选rang语句生成指定规则的数列1rangeend获取从0开始到end结束的数字序列不含end本身2rangestartend获取一个从start开始到end结束的数字序列不含end本身3rangestartendstep获取一个从start开始到end结束的序列步长step不含end本身egrange ( 0 , 11 , 2 ) 的序列就是0246810#计算1~100之间所有的奇数和 total 0 for i in range(1,101): if i %2 ! 0 : total i print(f1~100之间的奇数和为:{total}) #另一种方法 total2 0 for i in range(1,101,2): total2 i print(f1~100之间的奇数和为:{total2})3、·嵌套循环在2、for循环的案例中就已经存在for和if的嵌套循环了#打印99乘法表 for i in range(1,10): #外层循环,表有1~9行 for j in range(1,i1): #内层循环,每行有i列 print(f{j}*{i} {i*j},end ) print()案例打印国际象棋棋盘■ □ ■ □ ■ □ ■ □□ ■ □ ■ □ ■ □ ■■ □ ■ □ ■ □ ■ □□ ■ □ ■ □ ■ □ ■■ □ ■ □ ■ □ ■ □□ ■ □ ■ □ ■ □ ■■ □ ■ □ ■ □ ■ □□ ■ □ ■ □ ■ □ ■#打印国际象棋棋盘 # 循环8行 for i in range(8): # 循环8列 for j in range(8): if (i j) % 2 0: print(■ ,end) else: print(□ ,end) print()三、循环的的综合案例break结束循环、跳出循环continue直接进入下一个循环random生成随机数random.randint(a:1,b:100)生成1到100之间的随机数import random案例1让用户输入用户名和密码用户名为空或用户名和密码错误重新输入用户名和密码用户名和密码为你admin/666888、root/123456、wang/123456则登陆成功while True: # 输入用户名和密码 username input(Enter your username: ) password input(Enter your password: ) if username or password : #用户名或密码为空 print(Please enter your username and password) continue #后面的代码不会执行直接进入下一个循环 #用户名和密码正确 elif username admin and password 666888 : print(Welcome Admin) break elif username root and password 123456: print(Welcome Admin) break elif username wang and password 123456: print(Welcome Admin) break else:#用户名或密码不正确 print(Wrong username or password, try again)案例2猜数字系统在1到100之间随机生成一个数用户根据提示猜数字如果猜错系统给出提示猜大了还是猜小了如果猜对则游戏结束import random random_number random.randint(1, 100) #生成1到100之间的随机数 #开始循环 while True: user int(input(Enter a number: )) if user random_number: print(You win!) break elif user random_number and user 100: print(Too high!) continue elif user random_number and user 1: print(Too low!) continue else: print(out of range!please again) continue