python - 流程控制语句 (2) while语句

来源:互联网 发布:床垫怎么选 知乎 编辑:程序博客网 时间:2024/05/29 12:54

2.循环控制语句while

1.while break 语句

  • 示例程序1 猜数字 (V2.0)

假如 : 给出一个真实的数字real_num= 43,

# -*- coding: UTF-8 -*-real_num = 43# print type(real_num)while True:    guess_num = int(raw_input("请输入你猜的数字:"))    # print type(guess_num)    if real_num > guess_num :        print "你猜的数字比原来的小了"    elif real_num < guess_num:        print "你猜的数字比原来的大了"    else:         print "猜对了"         break
  • 示例程序2 猜数字 (V2.1)

假如 : 给出一个真实的数字real_num= 43,
限定猜数字的次数 ,只能 猜3次

# -*- coding: UTF-8 -*-real_num = 43# print type(real_num)retry_count = 0# while True:while retry_count < 3:    guess_num = int(raw_input("请输入你猜的数字:"))    # print type(guess_num)    if real_num > guess_num :        print "你猜的数字比原来的小了"        retry_count+=1    elif real_num < guess_num:        print "你猜的数字比原来的大了"        retry_count += 1    else:         print "猜对了"         break
  • 代码优化 1.0 对重复的代码进行修改
# -*- coding: UTF-8 -*-real_num = 43# print type(real_num)retry_count = 0# while True:while retry_count < 3:    guess_num = int(raw_input("请输入你猜的数字:"))    # print type(guess_num)    if real_num > guess_num :        print "你猜的数字比原来的小了"    elif real_num < guess_num:        print "你猜的数字比原来的大了"    else:         print "猜对了"         break    retry_count += 1
  • 示例程序3 猜数字 (V3.1)

假如 : 给出一个真实的数字real_num= 43,
限定猜数字的次数 ,只能 猜3次
并且要求使用导入 random 模块,随机数模块的方式,进行猜数字

# -*- coding: UTF-8 -*-import randomreal_num = random.randrange(10)# print type(real_num)retry_count = 0# while True:while retry_count < 3:    guess_num = int(raw_input("请输入你猜的数字:"))    # print type(guess_num)    if real_num > guess_num :        print "你猜的数字比原来的小了"    elif real_num < guess_num:        print "你猜的数字比原来的大了"    else:         print "猜对了"         break    retry_count += 1else:    print "The real num is ",real_num

while的后面有一个else语句,返回一个实际数的值

  • 示例程序4 优化上面代码的版本 猜数字 (V3.1)

由于尝试输入非数字字符(如回车)后,代码出错!请把输入字符串中的“空格和字符串”去掉。

# -*- coding: UTF-8 -*-import randomreal_num = random.randrange(10)# print type(real_num)retry_count = 0# while True:while retry_count < 3:    guess_num = int(raw_input("请输入你猜的数字:").strip())    # print type(guess_num)    if real_num > guess_num :        print "你猜的数字比原来的小了"    elif real_num < guess_num:        print "你猜的数字比原来的大了"    else:         print "猜对了"         break    retry_count += 1else:    print "The real num is ",real_num
0 0