python入门之流程控制

python入门之流程控制

一、什么叫流程控制

所谓流程控制就是控制流程,具体指控制程序的执行流程,而执行流程分为三种结构:顺序结构(之前写的代码都是顺序结构),分支结构(用到if判断)、循环结构(用where与for)

二、分支结构

2.1什么是分支结构

分支结构就是根据条件判断的真假去执行不同分支对应的子代码

2.2为什么要使用分支结构

程序中需要有相应的机制用来控制计算机具备人的判断能力

2.3如何使用分支结构

if 主要用来判断事物的对错,真假是否可行

如:

1.前面有一个小姐姐年龄在21-25之间漂亮向她要微信:

age_of_girl = 18
if age_of_girl >=18 and age_of_girl <=23:
   print("你好美女,可以给我你的微信吗")

2.查看学习成绩的合格度:

90<=成绩 优秀

80<=成绩 良好

70<=成绩 普通

60<=成绩 及格

score = input('>>>: ')
score = int(score)
if score>= 90:
   print('优秀')
elif score>= 80:
   print('良好')
elif score>= 70:
   print('普通')
elif score>= 60:
   print('及格')
else:
   print('不及格')

3.if嵌套:向前面的人表白(关键字:18<=age<=23,beautiful,gender=female,height=174)

if age_of_girl >= 21 and age_of_girl <= 25:

print('你好,美女可以给我你的微信吗')

 

age = 21
gender = 'female'
height = 174
beautiful = True
if 18 <= age <= 23 and gender == 'female' and height >= 173:
   print('小姐姐,我好喜欢你,我们在一起吧')
   if "表白成功":
       print('走我带你去看电影去')
   else:
       print('拜拜就拜拜,下一个会更乖!')

else:
   print('滚')

三、循环结构

3.1什么是循环结构

所谓循环结构就是重复执行某段代码块

3.2为什么要用循环结构

程序需要有相应的机制来控制计算机循环做事的能力

3.3如何使用循环结构

3.3.1 while循环语法

python中有while循环与for循环两种循环机制,while循环为条件循环

img

while循环的身份认证:三次输入错误后,锁定账户

username = "python"
password = '123456'
count = 0
while count < 3:
   inp_name = input("请输用户名:")
   inp_pwd = input("请输入密码")
   if inp_name == username and inp_pwd == password:
       print('登陆成功')
   else:
       print("数据错误请重新输入!")
       count +=1
else:
   print('用户已被锁定')

while+break的使用

结束当前层数循环

username = "python"
password = '123456'
count = 0
while count < 3:
   inp_name = input("请输用户名:")
   inp_pwd = input("请输入密码")
   if inp_name == username and inp_pwd == password:
       print('登陆成功')
       break #用于本层循环结束
   else:
       print("数据错误请重新输入!")
       count +=1
else:
   print('用户已被锁定')

while嵌套+tag使用

针对嵌套多层的while循环,如果我们的目的很明确就是要在某一层直接退出所有层的循环,其实有一个窍门,就让所有while循环的条件都用同一个变量,该变量的初始值为True,一旦在某一层将该变量的值改成False,则所有层的循环都结束

username = "python"
password = '123456'
count = 0
tag = True
while tag:
   inp_name = input("请输用户名:")
   inp_pwd = input("请输入密码")
   if inp_name == username and inp_pwd == password:
       print('登陆成功')
       while tag:
           cmd = input('>>:')
           if cmd == 'quit':
               tag = False
               break
       print('退出')
   break
else:
   print("数据错误请重新输入!")
   count += 1

3.3.2while+continue的使用: continue则用于结束本次循环,直接进入下一次循环

打印从1到9的数字不打印7
count = 0
while count < 9:
   number1=count+1
   count += 1
   if number1 == 7:
       continue
   print(number1)

while + else的使用z

在while循环的后面,我们可以跟else语句,当while 循环正常执行完并且中间没有被break 中止的话,就会执行else后面的语句,所以我们可以用else来验证,循环是否正常结束

count = 0
while count <= 5 :
   count += 1
   print('我有%s个苹果'%count)
else:
   print("循环结束")

如果在执行过程中被break就不会执行else语句

count = 0
while count <= 5 :
    count += 1
    if count ==4:
        break
    print('我有%s个苹果'%count)
else:

如果在执行过程中被continue也会执行else语句

count = 0
while count <= 5 :
    count += 1
    if count ==4:e
        continue
    print('我有%s个苹果'%count)
else:
    print("循环结束")

3.3.3for循环语法

for循环可以做的事情while循环都可以实现,之所以用for循环是因为在循环取值(即遍历值)时for循环比while循环的使用更为简洁,

for i in ['a','b','c','d']:
    print(i)
a
b
c
d

img

打印数字0-10

复杂方式
count = 0
while count<11:
    print(count)
    count +=1
简单方式range(从0开始到尾数-1)
for i in range(11):
    print(i)

打印九九乘法表:

for i in range(0,10):
    for j in range(1,i+1):
        print('%d*%d %d' %(i,j,i*j),end='\t')  #\t表示制表符使打印内容更清晰明了
    print()

 

posted @ 2019-11-05 14:38  薛定谔的量子猫  阅读(179)  评论(0编辑  收藏  举报