python while循环案例

1.while循环语句基本结构?

while condition:

    loop body

2.利用while语句写出猜大小的游戏:

设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确,然后退出循环。

while True:

    num = int(input(">>>"))

    if num < 66:

       print("小了")

    elif num > 66:

       print("大了")

    else:

       print("正确")

       break

<运行结果>

>>>10

小了

>>>20

小了

>>>30

小了

>>>67

大了

>>>66

3.在2题的基础上进行升级:

给用户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循环,如果三次之内没有猜测正确,则自动退出循环,并显示‘太笨了你....’。

tag = 0

while True:

    num = int(input(">>>"))

    if num < 66:

        print("小了")

        tag += 1

    elif num > 66:

        print("大了")

        tag +=1

    else:

        print("正确")

        break

    if tag == 3:

        print("太笨了你")

        break

<运行结果>

>>>10

小了

>>>20

小了

>>>66

正确

>>>10

小了

>>>50

小了

>>>70

大了

太笨了你

4.使用while循环输出 1 2 3 4 5 6 8 9 10

while True:

    num = 0

    while True:

        num += 1

        if num == 7:

            continue

        elif num < 11:

            print(num)

        else:

            break

<运行结果>

1

2

3

4

5

6

8

9

10

1

5.求1-100的所有数的和

sum = 0

num = 1

while True:

    sum += num

    num += 1

    if num == 101:

        break

print('1-100的所有数的和是:%s'%sum)

<运行结果>

1-100的所有数的和是:5050

6.输出 1-100 内的所有奇数

num = 0

while True:

    num += 1

    if num != 100:

        if num % 2 == 0:

            continue

        else:

            print(num)

    else:

        break

<运行结果>

1

3

5

7

7.输出 1-100 内的所有偶数

num = 0

while True:

    num += 1

    if num != 100:

        if num % 2 != 0:

            continue

        else:

            print(num)

    else:

        print(100)

        break

<运行结果>

2

4

6

8

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

num = 0

sum = 0

while True:

    num += 1

    if num != 100:

        if num % 2 == 0:

            sum -= num

        else:

            sum += num

    else:

        print("1-2+3-4+5 ... 99的所有数的和:%s"%sum)

        break

<运行结果>

1-2+3-4+5 ... 99的所有数的和:50

9.⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化)

username="孙亚伟"

password="20181228"

cnt = 2

while True:

    Name = input("name?")

    Pass = input("password?")

    if Name == username and Pass == password:

        print("Welcome!")

        break

    elif cnt == 0:

        print("尝试错误次数过多")

        break

    else:

        print("错误剩余次数是:%s"%(cnt))

        cnt -=1  

<运行结果>

name?张三

password?123

错误剩余次数是:2

name?李四

password?123

错误剩余次数是:1

name?王五

password?123

尝试错误次数过多

---------------------------------------------------------------------

name?孙亚伟

password?123

错误剩余次数是:2

name?孙亚伟

password?20181228

Welcome!

上一篇:Eight hdu 1043 八数码问题 双搜


下一篇:linux每日命令(33):diff命令