python基础之流程控制

流程控制之----if

  流程控制,是指程序在运行时,个别的指令(或者是陈述、子程序)运行或者求值的顺序。人生道路上的岔口有很多,在每个路口都是一个选择,在每个路口加上一个标签,选择哪个就是满足哪个条件,就走哪条道路。这个不断选择的过程,就是流程控制。

if...else语句

单分支

if 条件:

  满足条件后执行的代码

 双分支

"""
if 条件:
    满足条件执行代码
else:
    不满足if条件执行代码    
"""
girl_age = 30

if girl_age < 30:
    print("to young to simple!")
else:
    print("you are big girl")

多分支

if 条件:
    满足条件执行代码
elif 条件:
    上面条件不满足但是满足这个条件执行代码
else:
    上面都不满足执行代码

实例

age = 33
content = input("请猜年龄:").strip()

if content > age:
    print("猜的年龄大了,请重新猜...")
elif content < age:
    print("猜的年龄下了,请重新猜...")
else:
    print("你太厉害了,猜对了...")

代码的执行顺序是自上而下。

流程控制之-----while循环

while 条件:
    #循环体

    #如果条件为真,那么循环体则执行
    #如果条件为假,那么循环体不执行

循环中止语句

  break     ---->用于完全结束一个循环,跳出循环体执行循环后面的语句。

  continue ---->与break有些类似,区别在于continue只是中止本次循环,接着还执行后面的循环,而break则完全终止循环。

示例 break:

count = 0
while count <= 10:
    print(count)
    if count == 5:
        print("到%s了,终止掉" %count)
        break
    count += 1 #每执行一次循环,count+1

输出为

1
2
3
4
到5了,终止掉

示例 continue:

count = 0
while count <= 10:
  count += 1
  if count > 5 and count < 8:
    continue
  print(count)

输出:

1
2
3
4
9
10

while...esle...

while后面跟着else的作用是指,当while循环正常执行完,中间没有被break中止的话,就会执行else后面的语句

count = 0
while count <= 5:
    count += 1
    print("Loop:",count)
else:
    print("循环正常结束。")

执行结果

Loop 1
Loop 2
Loop 3
Loop 4
Loop 5
循环正常结束

如果执行过程中被break掉,则不会执行else的语句

count = 0
while count <= 5:
    count += 1
    if count == 3:break
    print("Loop",count)
else:
    print("循环正常结束")

执行结果

Loop 1
Loop 2

相关练习题

1、使用while循环输入 1 2 3 4 5 6   8 9 10

n = 0
while n <= 10:
    n += 1
    if n == 7: continue
    print(n,end=" ")

2、求1-100的所有数的和

num = 1
Sum = 0
while num < 101:
    Sum = Sum + num
    num += 1
print(Sum)

3、输出 1-100 内的所有奇数

for i in range(1,100,2):
    print(i,end=" ")

4、输出 1-100 内的所有偶数

 for i in range(0,100,2):
     print(i,end=" ")

5、求1-2+3-4+5 ... 99的所有数的和

1、sum1 = 0
     sum2 = 0
     for i in range(1,100,2):
         sum1 = sum1 + i
     for o in range(0,100,2):
        sum2 = sum2 + o
     print(sum1 - sum2)

2、print(sum([x if x%2 == 1 else -x for x in range(1, 100)]))
3、
    num = 0
    for i in range(100):
        if i%2 == 1:
            num += i
        else:
            num -= i
    print(num)
View Code

6、多个用户名登陆(三次机会重试),输入Y/y 继续尝试,输入其它,退出。

li = [
    {"username":'alex','password':'123'},
    {'username':'wusir','password':'1234'},
    {'username':'taibai','password':'12345'}
]
count = 0
flag = True
while flag:
    if count == 3:
        select = input("是否继续尝试输入【Y/N】").strip()
        if len(select) == 0 :continue
        if select == "Y" or select == 'y':
            count = 0
        else:
            flag = False
        continue
    username = input("请输入你的姓名:")
    passwd = input("请输入你的密码:")
    for i in li:
        if i['username'] == username and i['password'] == passwd and count < 3:
            print("Welcome Children %s!!" %username)
            flag = False
            break
    else:
        print("用户名或者密码不对,请再次输入!")
        count += 1
        continue
    if not flag:break
else:
    print('byebye sir!')
View Code

 

posted @ 2018-04-02 15:41  大叔曹  阅读(206)  评论(0编辑  收藏  举报