如何使用python为我的游戏创建计分计数器?
嗨,我的朋友帮我用python编写了这个游戏。但是我想在我的程序中添加一个分数计数器——分数计数器将记录用户输赢的次数。 如果你们能告诉我如何在我的比赛中加分,或者告诉我我会多么感激。我知道分数计数器应该是我的主要功能的一部分,但我不知道如何添加分数计数器,因此我在这里 我使用的是PYTHON版本2.7.6 几个月前刚开始编程的初学者:D 谢谢,这是我的代码:如何使用python为我的游戏创建计分计数器?,python,Python,嗨,我的朋友帮我用python编写了这个游戏。但是我想在我的程序中添加一个分数计数器——分数计数器将记录用户输赢的次数。 如果你们能告诉我如何在我的比赛中加分,或者告诉我我会多么感激。我知道分数计数器应该是我的主要功能的一部分,但我不知道如何添加分数计数器,因此我在这里 我使用的是PYTHON版本2.7.6 几个月前刚开始编程的初学者:D 谢谢,这是我的代码: import random def chkValidInput (userInput): chkNumber = Fa
import random
def chkValidInput (userInput):
chkNumber = False
for amtChar in range(0, len( userInput ) ):
for aNumber in range(0, 10):
if userInput[amtChar] == str(aNumber):
chkNumber = True
break
elif userInput[amtChar] != str(aNumber):
chkNumber = False
if chkNumber == False:
return False
return True
def evaluateBet(choice):
randNum = 0
randNum = random.randrange(1,14)
print "The random number is: " + str(randNum)
if choice == "high" and randNum > 7:
print "You Win!"
return True
elif choice == "low" and randNum < 7:
print "You Win!"
return True
else:
print "You Lose!"
return False
def main():
print "Commencing HiLo.py...\n"
random.seed(None)
points = 1000
wager = 0
userInput = None
programLoop = True
validInput = False
while programLoop == True:
print "Points remaining: " + str( points )
wager = 0
userInput = None
validInput = False
while validInput == False:
userInput = raw_input("\nMake a wager: ")
validInput = chkValidInput(userInput)
if validInput == False:
print "Invalid Input. It must be a positive Number. Try Again."
elif validInput == True:
if int( userInput ) > points:
validInput = False
print "You don't have enough points to make that wager. Try Again."
elif int( userInput ) == 0:
validInput = False
print "Your wager must be greater than 0. Try Again."
wager = int (userInput)
points = points - wager
print "Points remaining: " + str( points )
print "Wager: " + str( wager )
validInput = False
while validInput == False:
userInput = raw_input("\nPlace a bet: Either type 'High' or 'Low': ")
userInput = userInput.lower()
if userInput == "high" or userInput == "low":
validInput = True
else:
print "You may only choose to type from the options 'high' or 'low' "
if evaluateBet(userInput) == True:
points = ( points + (wager * 2) )
wager = 0
print "Points remaining: " + str( points )
validInput = False
if points <= 0:
print "You do not have anymore points; game over."
programLoop = False
else:
while validInput == False:
userInput = raw_input("\nWould you like to play again?: Type 'yes' or 'no': ")
userInput = userInput.lower()
if userInput == "yes" or userInput == "no":
validInput = True
else:
print "You may only choose to type from the options 'yes' or 'no' "
if userInput == "yes":
programLoop = True
elif userInput == "no":
programLoop = False
main()
随机导入
def chkValidInput(用户输入):
chkNumber=False
对于范围(0,len(userInput))中的amtChar:
对于范围(0,10)内的数量:
如果用户输入[amtChar]==str(一个成员):
chkNumber=True
打破
elif userInput[amtChar]!=str(编号):
chkNumber=False
如果chkNumber==False:
返回错误
返回真值
def EvaluateSet(选项):
randNum=0
randNum=random.randrange(1,14)
打印“随机数为:”+str(随机数)
如果选项==“高”且randNum>7:
打印“你赢了!”
返回真值
elif choice==“低”且randNum<7:
打印“你赢了!”
返回真值
其他:
打印“你输了!”
返回错误
def main():
打印“开始HiLo.py…\n”
随机。种子(无)
点数=1000
赌注=0
用户输入=无
programLoop=True
validInput=假
当programLoop==True时:
打印“剩余点数:”+str(点数)
赌注=0
用户输入=无
validInput=假
当validInput==False时:
用户输入=原始输入(“\n下注:”)
validInput=chkValidInput(用户输入)
如果validInput==False:
打印“无效输入。它必须是正数。请重试。”
elif validInput==真:
如果int(userInput)>点:
validInput=假
打印“您没有足够的点数进行赌注。请重试。”
elif int(用户输入)=0:
validInput=假
打印“您的赌注必须大于0。请重试。”
下注=整数(用户输入)
积分=积分-下注
打印“剩余点数:”+str(点数)
打印“下注:+str(下注)
validInput=假
当validInput==False时:
userInput=原始输入(“\n下注:键入“高”或“低”:”)
userInput=userInput.lower()
如果userInput==“高”或userInput==“低”:
validInput=True
其他:
打印“您只能从“高”或“低”选项中选择键入”
如果EvaluateSet(userInput)=真:
点数=(点数+(下注*2))
赌注=0
打印“剩余点数:”+str(点数)
validInput=假
如果分数您已经拥有了制作分数计数器所需的几乎所有代码,只需要在这里和那里添加一些东西
在def main()
的正下方定义wins
和LOSS
变量,两者都等于0
def main():
wins = 0
losses = 0
在main()函数的此行下方
while programLoop == True:
把这些打印报表打印出来,这样分数就可以打印出来了
print "Wins: " + str(wins)
print "Losses: " + str(losses)
现在更改这个if语句
if evaluateBet(userInput) == True:
points = ( points + (wager * 2) )
wager = 0
到
如果您正确地添加了这些代码行,您现在应该有一个功能性的分数计数器
最后一件事,代码中存在缩进问题
elif validInput == True:
if int( userInput ) > points:
validInput = False
print "You don't have enough points to make that wager. Try Again."
应该是
elif validInput == True:
if int( userInput ) > points:
validInput = False
print "You don't have
有足够的分数来下注。再试一次。”
您只需将validInput=False
向右移动一个空格即可
编辑:完整代码
import random
def chkValidInput (userInput):
chkNumber = False
for amtChar in range(0, len( userInput ) ):
for aNumber in range(0, 10):
if userInput[amtChar] == str(aNumber):
chkNumber = True
break
elif userInput[amtChar] != str(aNumber):
chkNumber = False
if chkNumber == False:
return False
return True
def evaluateBet(choice):
randNum = 0
randNum = random.randrange(1,14)
print "The random number is: " + str(randNum)
if choice == "high" and randNum > 7:
print "You Win!"
return True
elif choice == "low" and randNum < 7:
print "You Win!"
return True
else:
print "You Lose!"
return False
def main():
wins = 0
losses = 0
print "Commencing HiLo.py...\n"
random.seed(None)
points = 1000
wager = 0
userInput = None
programLoop = True
validInput = False
while programLoop == True:
print "Wins: " + str(wins)
print "Losses: " + str(losses)
print "Points remaining: " + str( points )
wager = 0
userInput = None
validInput = False
while validInput == False:
userInput = raw_input("\nMake a wager: ")
validInput = chkValidInput(userInput)
if validInput == False:
print "Invalid Input. It must be a positive Number. Try Again."
elif validInput == True:
if int( userInput ) > points:
validInput = False
print "You don't have enough points to make that wager. Try Again."
elif int( userInput ) == 0:
validInput = False
print "Your wager must be greater than 0. Try Again."
wager = int (userInput)
points = points - wager
print "Points remaining: " + str( points )
print "Wager: " + str( wager )
validInput = False
while validInput == False:
userInput = raw_input("\nPlace a bet: Either type 'High' or 'Low': ")
userInput = userInput.lower()
if userInput == "high" or userInput == "low":
validInput = True
else:
print "You may only choose to type from the options 'high' or 'low' "
if evaluateBet(userInput) == True:
points = ( points + (wager * 2) )
wager = 0
wins += 1
else:
losses += 1
print "Points remaining: " + str( points )
validInput = False
if points <= 0:
print "You do not have anymore points; game over."
programLoop = False
else:
while validInput == False:
userInput = raw_input("\nWould you like to play again?: Type 'yes' or 'no': ")
userInput = userInput.lower()
if userInput == "yes" or userInput == "no":
validInput = True
else:
print "You may only choose to type from the options 'yes' or 'no' "
if userInput == "yes":
programLoop = True
elif userInput == "no":
print "Final wins and losses"
print "Wins: " + str(wins)
print "Losses: " + str(losses)
programLoop = False
main()
随机导入
def chkValidInput(用户输入):
chkNumber=False
对于范围(0,len(userInput))中的amtChar:
对于范围(0,10)内的数量:
如果用户输入[amtChar]==str(一个成员):
chkNumber=True
打破
elif userInput[amtChar]!=str(一个成员):
chkNumber=False
如果chkNumber==False:
返回错误
返回真值
def EvaluateSet(选项):
randNum=0
randNum=random.randrange(1,14)
打印“随机数为:”+str(随机数)
如果选项==“高”且randNum>7:
打印“你赢了!"
返回真值
elif choice==“低”且randNum<7:
打印“你赢了!"
返回真值
其他:
打印“你输了!"
返回错误
def main():
wins=0
损失=0
打印“开始HiLo.py…\n”
随机。种子(无)
点数=1000
赌注=0
用户输入=无
programLoop=True
validInput=假
当programLoop==True时:
打印“Wins:+str(Wins)
打印“损失:”+str(损失)
打印“剩余点数:”+str(点数)
赌注=0
用户输入=无
validInput=假
当validInput==False时:
用户输入=原始输入(“\n下注:”)
validInput=chkValidInput(用户输入)
如果validInput==False:
打印“无效输入”。它必须是正数。再试一次。”
elif validInput==真:
如果int(userInput)>点:
validInput=假
打印“你没有足够的点数来下注。再试一次。”
elif int(用户输入)=0:
validInput=假
打印“您的赌注必须大于0。再试一次。”
下注=整数(用户输入)
积分=积分-下注
打印“剩余点数:”+str(点数)
打印“下注:+str(下注)
validInput=假
当validInput==False时:
用户输入=原始输入(“\nLAC
import random
def chkValidInput (userInput):
chkNumber = False
for amtChar in range(0, len( userInput ) ):
for aNumber in range(0, 10):
if userInput[amtChar] == str(aNumber):
chkNumber = True
break
elif userInput[amtChar] != str(aNumber):
chkNumber = False
if chkNumber == False:
return False
return True
def evaluateBet(choice):
randNum = 0
randNum = random.randrange(1,14)
print "The random number is: " + str(randNum)
if choice == "high" and randNum > 7:
print "You Win!"
return True
elif choice == "low" and randNum < 7:
print "You Win!"
return True
else:
print "You Lose!"
return False
def main():
wins = 0
losses = 0
print "Commencing HiLo.py...\n"
random.seed(None)
points = 1000
wager = 0
userInput = None
programLoop = True
validInput = False
while programLoop == True:
print "Wins: " + str(wins)
print "Losses: " + str(losses)
print "Points remaining: " + str( points )
wager = 0
userInput = None
validInput = False
while validInput == False:
userInput = raw_input("\nMake a wager: ")
validInput = chkValidInput(userInput)
if validInput == False:
print "Invalid Input. It must be a positive Number. Try Again."
elif validInput == True:
if int( userInput ) > points:
validInput = False
print "You don't have enough points to make that wager. Try Again."
elif int( userInput ) == 0:
validInput = False
print "Your wager must be greater than 0. Try Again."
wager = int (userInput)
points = points - wager
print "Points remaining: " + str( points )
print "Wager: " + str( wager )
validInput = False
while validInput == False:
userInput = raw_input("\nPlace a bet: Either type 'High' or 'Low': ")
userInput = userInput.lower()
if userInput == "high" or userInput == "low":
validInput = True
else:
print "You may only choose to type from the options 'high' or 'low' "
if evaluateBet(userInput) == True:
points = ( points + (wager * 2) )
wager = 0
wins += 1
else:
losses += 1
print "Points remaining: " + str( points )
validInput = False
if points <= 0:
print "You do not have anymore points; game over."
programLoop = False
else:
while validInput == False:
userInput = raw_input("\nWould you like to play again?: Type 'yes' or 'no': ")
userInput = userInput.lower()
if userInput == "yes" or userInput == "no":
validInput = True
else:
print "You may only choose to type from the options 'yes' or 'no' "
if userInput == "yes":
programLoop = True
elif userInput == "no":
print "Final wins and losses"
print "Wins: " + str(wins)
print "Losses: " + str(losses)
programLoop = False
main()