zoukankan      html  css  js  c++  java
  • guess number

    crossin的前面几章基本和LPTHW内容重合,因此我直接做了他前面的一个综合练习。

    猜数游戏,

    即系统随机记录一个数,根据用户猜的记录,如果正确则告知,且退出游戏,如不正确,则提示答案与用户输入的比较。超过6次仍未猜对,则告知用户答案,且退出。

    我在本章练习里,增加了一个列表,用以记录用户的输入记录,当用户失败时,告知他输入过哪些数字。

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    import random
    def main():
        random_num = random.randint(1,100)
        user_input = []
        for i in xrange(1,7):
            user_num =  int(raw_input("please input a num:
    >	"))
            if random_num == user_num:
                print "BINGO!"
                print "You guess the answer on %d time" % i
                is_ok = True
                break
            elif random_num > user_num:
                print "The answer is large then your input"
                user_input.append(user_num)
                is_ok = False
            elif random_num < user_num:
                print "The answer is less then your input"
                user_input.append(user_num)
                is_ok = False
        if  is_ok:
            print "You win the game"
        else:
            print "You lose the game"
            print "The answer is %d,your answer is %r" % (random_num,)
    if __name__ == "__main__":
        main()

     考察点:

    1、loop控制,其实while,for都可以很好的进行控制这个内容,在这里我没有选用while是因为while判断条件才进行循环的,如果条件控制不佳,容易造成死循环。而for循环的话,总能结束。

    2、loop控制,关于答对题目时的退出,break,其实还有一种continue的控制方法,但是我没想到怎么加进去。continue的意思是,跳过本次循环,而break是跳出循环体。

    3、布尔判断即if-elif-else

    4、关于标准库的使用,即如果使用import导入必要模块等。

    5、提高:其实可以使用try-except-finally进行用户输入,是否为数字的异常检测。我这里没写,如感兴趣可以给我留言。

    6、变量赋值以及用户的输入。

  • 相关阅读:
    Putty·Network error:Software caused connection abort
    VSCode·搭建Java开发环境
    MSSQL·将一对多的数据合并为以指定分隔符的数据
    技能Get·Windows10将任何格式文件固定到开始屏幕
    MSSQL·查询TSQL语句执行时间的三种方法
    Javac·编码GBK的不可映射字符
    傅里叶变换、拉氏变换、z变换的含义
    宏、内联函数和普通函数的区别
    OpenGL中创建GLUT菜单
    在PC安裝Android系統+軟體
  • 原文地址:https://www.cnblogs.com/sageskr/p/4085741.html
Copyright © 2011-2022 走看看