精华内容
下载资源
问答
  • randomclass GuessNum:def __init__(self):self._num = ”self.input_num = []self.count = 1 #对所用次数self.sec = 0 #对所用时间self._generate_num()def _generate_num(self): #产生不重复的四个数字seq_...

    代码如下:

    import time, random

    class GuessNum:

    def __init__(self):

    self._num = ”

    self.input_num = []

    self.count = 1 #猜对所用次数

    self.sec = 0 #猜对所用时间

    self._generate_num()

    def _generate_num(self): #产生不重复的四个数字

    seq_zton = list(range(10))

    for i in range(0, 4):

    a = str(random.choice(seq_zton)) #选出一个数字

    self._num += a

    seq_zton.remove(int(a)) #注意a的类型

    self.sec = time.clock() #开始计时

    def check_answer(self):

    return self._num

    def check_input(self):

    num_pos, num_value = 0, 0 #位置对和数值对的分别的个数

    tmp = input(“Please input the number you guess(No repetition),or ‘c’ to check the answer:”)

    if tmp == ‘c’:

    print(self.check_answer())

    tof = self.check_input()

    return tof

    elif not tmp.isalnum or not len(tmp) == 4:

    print(“Wrong format!”)

    tof = self.check_input() #需要优化

    return tof

    self.input_num = list(tmp)

    lst_temp = list(self._num)

    if self.input_num == lst_temp: #猜对

    self.prt_vic()

    return True

    for i in lst_temp:

    if i in self.input_num:

    if lst_temp.index(i) == self.input_num.index(i): #位置也相同

    num_pos += 1

    num_value += 1

    else:

    num_value += 1

    self.prt_state(num_pos, num_value)

    self.count += 1

    return False

    def prt_state(self, num_pos, num_value):

    print(“You’ve got %d numbers with the right position and %d numbers with the right value only” % (num_pos, num_value))

    def prt_vic(self):

    t = time.clock()

    self.sec = t – self.sec

    print(“Congratulations!You have successfully got the right number!”)

    print(“%d times and %.2f sec in total to get the right answer” % (self.count, self.sec))

    gn = GuessNum()

    while True:

    ss = gn.check_input()

    if ss:

    b = input(“Continue? y/n:”)

    if b == ‘n’:

    break

    else:

    gn = GuessNum()

    continue

    展开全文
  • # -*- coding: utf-8 -*-import random#数字类class NumberItem:#数字_GUESS_NUMBER_COUNT_ = 4def __init__(self):self._num_ = []#长度是否标准def IsFormat(self):return self._num_.__len__() == self._...

    # -*- coding: utf-8 -*-

    import random

    #数字类

    class NumberItem:

    #数字个数

    _GUESS_NUMBER_COUNT_ = 4

    def __init__(self):

    self._num_ = []

    #长度是否标准

    def IsFormat(self):

    return self._num_.__len__() == self._GUESS_NUMBER_COUNT_

    #生成随机数

    def RestRandomNumber(self):

    allNum = range(10)

    for index in range(self._GUESS_NUMBER_COUNT_):

    self._num_.append(allNum.pop(random.randrange(10-index)))

    #校验输入数

    def CheckNumber(self, input_number):

    result = NumberCheckResult()

    for index in range(self._GUESS_NUMBER_COUNT_):

    if (input_number._num_[index] == self._num_[index]):

    result.Add_A()

    elif(input_number._num_[index] in self._num_):

    result.Add_B()

    return result

    #返回字符串

    def GetNumber(self):

    return self._num_

    #竞猜结果 xAxB

    class NumberCheckResult:

    def __init__(self):

    self._guess_A_ = 0

    self._guess_B_ = 0

    def GetCheckResult(self):

    return '%d A %d B' % (self._guess_A_, self._guess_B_)

    def Add_A(self):

    self._guess_A_ += 1

    def Add_B(self):

    self._guess_B_ += 1

    #竞猜历史项

    class GuessHisItem:

    def __init__(self):

    self._guessNum_ = NumberItem()

    self._guessResult_ = NumberCheckResult()

    def ShowItem(self):

    print self._guessNum_.GetNumber() , ' - ' , self._guessResult_.GetCheckResult()

    #游戏类

    class GuessNumberGame():

    #机会次数

    _MAX_GUESS_TIMES_ = 8

    def __init__(self):

    self.ResetGameDate()

    #重置游戏数据

    def ResetGameDate(self):

    self._guessNum_ = NumberItem()

    self._guessHis_ = []

    def GetGuessTimes(self):

    return self._guessHis_.__len__()

    #输入字符串的格式转换

    def ChangeInputNumberFormat(self, numberStr):

    parseNum = NumberItem()

    if (numberStr.isdigit()):

    for eachNum in numberStr:

    parseNum._num_.append(int(eachNum))

    return parseNum

    #打印竞猜历史

    def ShowGuessHis(self):

    print ''

    print '你已经猜了 %d次, 总共%d次机会' % (self.GetGuessTimes(), self._MAX_GUESS_TIMES_)

    print ''

    for eachItem in self._guessHis_:

    eachItem.ShowItem()

    print ''

    def ShowHelp(self):

    print ''

    print '输入 \'help\' 显示命令列表.'

    print '输入 \'his\' 显示竞猜历史'

    print '输入 \'cheat\' 显示作弊结果'

    print '输入 \'quit\' 结束游戏'

    print ''

    def ShowCheat(self):

    print ''

    print '要猜的数字是 ', self._guessNum_.GetNumber()

    print ''

    def StartOneGame(self):

    self.ResetGameDate()

    print '开始猜数字游戏!'

    self._guessNum_.RestRandomNumber()

    print '随机号码 [*' + ',*'*(self._guessNum_._GUESS_NUMBER_COUNT_-1) + ']已经生成,你有%d次机会!' % self._MAX_GUESS_TIMES_

    #猜中标志

    guess_result = False

    quit_flag = False

    while (self.GetGuessTimes() < self._MAX_GUESS_TIMES_

    and guess_result != True and quit_flag != True):

    print '你还剩%d次机会,输入你猜的数字:' % (self._MAX_GUESS_TIMES_- self.GetGuessTimes())

    input_str = raw_input();

    if (input_str == 'help'):

    self.ShowHelp()

    elif(input_str == 'his'):

    self.ShowGuessHis()

    elif(input_str == 'cheat'):

    self.ShowCheat()

    elif(input_str == 'quit'):

    quit_flag = True

    else:

    #转换输入并校验

    hisItem = GuessHisItem()

    hisItem._guessNum_ = self.ChangeInputNumberFormat(input_str)

    if (hisItem._guessNum_.IsFormat() != True):

    print '数字格式错误, 重新输入!'

    else:

    #竞猜历史

    hisItem._guessResult_ = self._guessNum_.CheckNumber(hisItem._guessNum_)

    self._guessHis_.append(hisItem)

    hisItem.ShowItem()

    #猜中

    if (hisItem._guessResult_._guess_A_ == NumberItem._GUESS_NUMBER_COUNT_):

    guess_result = True

    print '恭喜,你猜中了数字' , self._guessNum_.GetNumber() , ' 用了%d次机会' % self.GetGuessTimes()

    elif(self.GetGuessTimes() == self._MAX_GUESS_TIMES_ ):

    print ''

    print '挑战失败,你已经猜了%d次,' % self.GetGuessTimes(), '正确的数字是', self._guessNum_.GetNumber()

    return quit_flag

    def StartGame(self):

    quit_flag = False

    while(quit_flag != True):

    quit_flag = self.StartOneGame()

    if (quit_flag != True):

    print ''

    print '再玩一局?(Y/N)'

    input_str = raw_input();

    if (input_str != 'Y'):

    quit_flag = True

    print '再见!'

    ###### MAIN #######

    if __name__ == '__main__':

    game = GuessNumberGame()

    game.StartGame()

    展开全文
  • /usr/bin/python2 #-*- coding: UTF-8 -*-34 importrandom5 secretNumber=random.randint(1,20)6 print "I'm thinking of a number between 1 and 20."7 times =08 for i in range(1,7):9 print "Take a gue...

    1 #!/usr/bin/python

    2 #-*- coding: UTF-8 -*-

    3

    4 importrandom5 secretNumber=random.randint(1,20)6 print "I'm thinking of a number between 1 and 20."

    7 times =08 for i in range(1,7):9 print "Take a guess:"

    10 guess=int(input())11 if guess

    展开全文
  • import randomwhile 1:daan = random.randint(1,10)print("这是一个猜数字游戏,答案是1到10的整数")count = 0while count ("你还有{0}机会,\n请输入一个1到10的整数:".format(3-count))if num.isdigit():num =...

    import random

    while 1:

    daan = random.randint(1,10)

    print("这是一个猜数字游戏,答案是1到10的整数")

    count = 0

    while count < 3:

    num = input("你还有{0}次机会,\n请输入一个1到10的整数:".format(3-count))

    if num.isdigit():

    num =int(num)

    if num == daan:

    print("恭喜你,答对了!")

    break

    if num > daan:

    print("猜的有点大")

    if num < daan:

    print("猜的有点小")

    count = count +1

    else:

    print("你输入的不是一个整数")

    if count == 3:

    print("给了你三次机会都没答对,正确的答案是:"+str(daan)+"!")

    print("怎么样,这游戏好玩吗?")

    print("按任意键结束游戏,按空格键继续游戏:")

    select = input("请输入你的选择:")

    if select != " ":

    break

    有以下功能:

    1、如果玩家输入的不是数字,则会提示玩家输入数字;

    2、一共有三次机会,且会提示玩家剩余的次数。

    3、三次答错后会提示正确答案。

    4、可以无限继续游戏。

    感觉这是功能最全的猜数字代码了,供初学者参考。

    展开全文
  • Python图片我们既然学习了循环语句和条件语句,那么今天我们来搞一点事情怎么样?今天我们来尝试做一个简单的数字小游戏...写一个猜数字游戏,要求:系统生成一个随机数(1-10), 用户有3机会,输入数字去猜。...
  • 这里来写一个python猜数字游戏。#coding:utf-8import randomreal_num = random.randrange(10)retry_count = 0while retry_count real_num:print "Wrong! you need try smaller!"elif guess_num ! you n...
  • 猜数字游戏,电脑随机生存一个[1, 100] 之间的正整数,人..."""猜数字游戏 黄哥所写黄哥Python培训 2020 全新升级课程咨询qq:1465376564"""import randomcomputer_num = random.randint(1, 100)left, right = 1, 10...
  • 摘要这篇文章主要介绍了python实现猜数字游戏(无重复数字)示例,需要的朋友可以参考下复制代码 代码如下:import time, randomclass GuessNum:def __init__(self):self._num = ''self.input_num = []self.count = 1 #...
  • Python实现猜数字游戏游戏规则:随机产生1到100之间的整数共有6猜测机会,每次猜测如果不正确会提示大于或小于目标值,6机会用完退出程序6机会,包含第6机会如果猜中,提示用户猜中如果用户输入不合法需要有...
  • 本文实例为大家分享了python3实现猜数字游戏的具体代码,供大家参考,具体内容如下需求目标:需求:猜数字游戏1: 开始游戏产生一个1~100随机数2: 用户输入,游戏根据输入值提示大或者小3: 用户根据提示继续输入,知道...
  • 最近在学python,学到控制流程要写一个猜数字游戏。不经想起小时候三色台的一个综艺节目,里面也有个猜数字游戏,于是就想写个简单的自己玩玩也好。规则:[0-100]随机生成一个数字,然后在猜数字,每叫一数字都是...
  • #-*- coding: UTF-8 -*-importrandomimporttimeimportthreadinga=random.randint(0,100)deffuntimes():globalalevel=10useabs=0start=time.time()whileTrue:end=time.time()usetime=end-startprint("本次游戏使用了%...
  • #!/usr/bin/env pythonimport osimport randomimport sysimport timedef yanse(s):print('\033[25;...40m %s \033[0m' %s)def menu():#print(' @@@@@@@@开始猜数字游戏@@@@@@@@')#print(' @@@@@@@@只有3机...
  • # -*- coding: utf-8 -*-import random#数字类class NumberItem:#数字_GUESS_NUMBER_COUNT_ = 4def __init__(self):self._num_ = []#长度是否标准def IsFormat(self):return self._num_.__len__() == self._...
  • [python]代码库import timeimport randomdef guess(chances, num):for guessesTaken in range(chances):a = eval(input('Entring your number: '))if a ('Too small,You got %d chances left!' % (chances-1...
  • python猜数字游戏

    千次阅读 2019-10-13 20:05:21
    python猜数字游戏猜字谜游戏功能介绍游戏设计思路代码实现后续扩展 python学习少不了勤加练习,而编写有些有意思的代码则是保持兴趣的关键。其中,编写小游戏是一个不错的方法。今天我们就用python来编写一个猜数字...
  • Python猜数字游戏

    千次阅读 2020-07-31 19:32:02
    Python猜数字游戏简单实现,实现特定如下: 1,统计赢的游戏次数 2,每次猜数字有6机会,猜不到就到下一轮游戏 3,游戏结束输出胜率 需要注意的是python 的random.randint(a,b)是闭区间,既返回的是 ...
  • 使用python进行简单的猜数字游戏(while循环)本案例主要是练习while循环,需求:如果给出某人的年龄,让你猜,猜对的话打印出You guess right如果猜的数字小于真实年龄值,那就打印出Think bigger,如果该数字大于...
  • # -*- coding: utf-8 -*-import random#数字类class NumberItem:#数字_GUESS_NUMBER_COUNT_ = 4def __init__(self):self._num_ = []#长度是否标准def IsFormat(self):return self._num_.__len__() == self._...
  • python经典的猜数字游戏,几乎所有人学编程时都会做。功能描述:随机选择一个三位以内的数字作为答案。用户输入一个数字,程序会提示大了或是小了,直到用户猜中。下面????????上代码import randomprint("下面是...
  • python猜数字游戏实现

    2020-03-28 22:40:48
    Python 猜数字游戏 这个东西实现比较简单,直接放代码吧。 import random n=random.randint(1,1000) def echo(a): #定义函数 if int(a)>n: print('很遗憾,比要猜的大。') elif int(a)<n: print('很遗憾...
  • Here's what I have so far: def guessingGame(): import random n = random.random() input = raw_input("Guess what integer I'm thinking of.") if int(input) == n: print "Correct!" elif int(input) < n: ...
  • Python 猜数字游戏

    千次阅读 2019-08-25 15:25:23
    猜数字游戏 ①给固定的数字来猜数字,此代码给定数值答案为:8 代码如下: print('---------猜数字游戏---------') temp=input('请你猜测一个数字:') guess=int(temp) while guess!=8: temp=input('错了,重新...
  • 在这个程序给我的提示是写一个随机数游戏,用户必须出随机数(1到100之间),如果不正确,就会提示它太低或太高。然后用户会反复猜测,直到找到解决方案。在解出后,猜测的次数应该在最后吻合。在import randomdef...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,299
精华内容 2,119
关键字:

python猜数字游戏猜n次

python 订阅