AB猜数字Python本地版
[i=s] 本帖最后由 ivor 于 2017-8-19 08:15 编辑 [/i][code]# -*- coding:utf-8 -*-
# AB猜数字
import re
import random
def getKey(*args):
array = [i for i in range(10)]
random.shuffle(array)
key = ''
for i in range(4):
key = key +str(array[i])
if key[0] == '0':
input("here is %s" %key)
key = getKey()
return key
k = getKey()
while True:
A = 0
B = 0
# print("===========")
print("答案:" + k)
number = input("请输入4位数字:")
try:
if int(number) < 0:
raise
except Exception as e:
print("必须为数字")
continue
if len(number) != 4:
print("位数不正确")
continue
elif len(set(number)) < 4:
print("不允许有重复数字")
continue
else:
for i in range(4):
if k[i] == number[i]:
A += 1
elif k.find(number[i]) != -1:
B += 1
if A == 4:
# print("正确")
k = getKey()
print("%dA%dB" % (A, B))[/code] 我之看别人代码学会的。
if len(set(str))>4 else 有重复数字。 [i=s] 本帖最后由 523066680 于 2017-8-18 20:23 编辑 [/i]
也叫 Bulls and Cows / The game of MOO
你要考虑别人输入ABCD 或者其他字母作为占位符的情况 :lol 我居然没有意识自己把符号写反了。
页:
[1]