📄 caishuzi.py
字号:
#猜数字 for S60
#玩法按照文曲星上的(印象中)
#4个数字,不重复,范围(1-9)
import appuifw
from random import randint
def initializeSecret():
secret = []
for i in range(4):
num = randint(1, 9)
while num in secret:
num = randint(1, 9)
secret = secret + [num]
return secret
def checkGuess(secret, guess):
bulls, cows = 0, 0
for i in range(4):
if guess[i] in secret:
if guess[i] == secret[i]:
bulls = bulls + 1
else:
cows = cows + 1
return (bulls, cows)
def processGuess(gue):
guess = []
if len(gue) != 4:
return guess
for i in range(4):
digit = gue[i]
try:
num = int(digit)
if not 1 <= num <= 9:
return guess
except:
return guess
if not num in guess:
guess = guess + [num]
return guess
goon = True
while goon:
secret = initializeSecret()
guessTime = 0
while guessTime < 8:
gue = appuifw.query(u'Please input four digits:', 'number')
guess = processGuess(str(gue))
if len(guess) != 4:
appuifw.note(u"Invalid input")
continue
print guess
guessTime = guessTime + 1
result = checkGuess(secret, guess)
if result[0] == 4:
appuifw.note(u"You guess it! Congratulations!")
guessTime = 0
break
print result
appuifw.note(u'%dA%dB'%(result[0], result[1]))
if guessTime >= 8:
appuifw.note(u"Sorry, you failed!")
goon = appuifw.query(u"Next Number?", 'query')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -