鱼C论坛

 找回密码
 立即注册
查看: 6074|回复: 0

新手求帮忙改进 猜数游戏(附源码)

[复制链接]
发表于 2015-11-13 01:19:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
闲的无聊做了一个以前玩过的猜数游戏 几A几B的那个 应该有人玩过吧。新手 刚学python 非常菜 做的代码感觉非常笨 求大家帮忙改进下。:ton:
  1. import random
  2. print('--------------------------欢迎来到猜数游戏--------------------------')
  3. print('作者:二峰')
  4. print('''这是一个猜数游戏,我这里有随机的四个数(不重复),你来猜,位置和数都对了\n算A,只有数对了算B,不允许输入重复的数字,数字范围是0至9.来试一试吧.''')
  5. print('''(输入'restart'重新开始,输入'quit'退出,输入'answer'显示答案)''')
  6. def game():
  7.         A = 0
  8.         B = 0
  9.         C = 0
  10.         zero = random.randint(0,9)
  11.         one = random.randint(0,9)
  12.         while one == zero:
  13.                 one = random.randint(0,9)
  14.         two = random.randint(0,9)
  15.         while two==zero or two==one:
  16.                 two = random.randint(0,9)
  17.         three = random.randint(0,9)
  18.         while three==zero or three==one or three==two:
  19.                 three = random.randint(0,9)
  20.         num = input('请输入4个数字:')
  21.         if num != 'quit' and num != 'answer' and num != 'restart':
  22.                 while num != str(zero) + str(one) + str(two) + str(three):
  23.                         if num == 'quit' or num == 'answer' or num == 'restart':
  24.                                 break
  25.                         while len(num)!=4 or num[0]==num[1] or num[0]==num[2] or num[0]==num[3] or num[1]==num[2] or\
  26.                               num[1]==num[3] or num[2]==num[3] or not num.isdigit():
  27.                                 print('您输入的格式不对,请重新输入.')
  28.                                 num= input('请输入4个数字:')
  29.                                 if num == 'quit' or num == 'answer' or num =='restart':
  30.                                         break
  31.                         if num == 'quit' or num == 'answer' or num =='restart':
  32.                                 break
  33.                         if num == str(zero) + str(one) + str(two) + str(three):
  34.                                 break
  35.                         if num[0] == str(zero):
  36.                                 A = A+1
  37.                         elif num[0]==str(one) or num[0]==str(two) or num[0]==str(three):
  38.                                 B = B+1
  39.                         if num[1] == str(one):
  40.                                 A = A+1
  41.                         elif num[1]==str(zero) or num[1]==str(two) or num[1]==str(three):
  42.                                 B = B+1
  43.                         if num[2] == str(two):
  44.                                 A = A+1
  45.                         elif num[2]==str(zero) or num[2]==str(one) or num[2]==str(three):
  46.                                 B = B+1
  47.                         if num[3] == str(three):
  48.                                 A = A+1
  49.                         elif num[3]==str(zero) or num[3]==str(one) or num[3]==str(two):
  50.                                 B = B+1
  51.                         C = C+1
  52.                         print(str(A) + 'A' + str(B) + 'B')
  53.                         A = 0
  54.                         B = 0
  55.                         num= input('请输入4个数字:')
  56.                 if num == str(zero) + str(one) + str(two) + str(three):
  57.                         print('4A0B')
  58.                         C = C+1
  59.                         print('你用了' + str(C) +'次!')
  60.                         num = input("是否要继续游戏:(输入'quit'退出,输入'restart'重新开始):")
  61.                         while num != 'quit' and num != 'restart':
  62.                                 print('您输入的格式不对,请重新输入.')
  63.                                 num = input("是否要继续游戏(输入'quit'退出,输入'restart'重新开始):")
  64.         if num == 'answer':
  65.                 print('答案是:' + str(zero) + str(one) + str(two) + str(three))
  66.                 num = input("是否要继续游戏(输入'quit'退出,输入'restart'重新开始):")
  67.                 while num != 'quit' and num != 'restart':
  68.                         print('您输入的格式不对,请重新输入.')
  69.                         num = input("是否要继续游戏(输入'quit'退出,输入'restart'重新开始):")
  70.         if num == 'quit':
  71.                 print('Bye bye!')
  72.         if num == 'restart':
  73.                 print('----------游戏已重新开始----------')
  74.                 game()
  75. game()
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-15 18:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表