runoob.com中while循环的笔记列表里,用户“我是可爱男生睡便天下男人”
#发的猜大小的游戏代码BUG
import random
s=int(random.uniform(1,10))
#print (s)
m=int(input("输入整数:"))
while m!=s: #这个判断条件导致程序如果第一次就猜对的话,循环不会运行,程序停止。
if m>s:
print("大了")
m=int(input("输入整数"))
if m<s:
print("小了")
m=int(input("输入整数"))
if m==s:
print("0K")
break
把s=int(random.uniform(1,10))的10改成3,很快能测试出BUG。
我按他的程序逻辑更正后,代码如下:
import random
s=int(random.uniform(1,10))
#print (s)
m=int(input("输入整数:"))
while True:
if m>s:
print("大了")
m=int(input("输入整数"))
if m<s:
print("小了")
m=int(input("输入整数"))
if m==s:
print("0K")
break
运行后,Bug解决。
再放一个我自己写的猜数字程序的代码,思考一下我写的这个比之上的有何优点。
import random
number=random.randint(1,1001)
while True:
print("\nplease input the number:")
answer=int(raw_input())
if answer==number:
print "good"
break
elif answer>number:
print("too high")
elif answer<number:
print("too low")
转载于:https://blog.51cto.com/13509991/2046271