纸,岩石和剪刀

时间:2013-10-26 22:14:28

标签: python-2.7

此代码不完整
输入

人类玩家输入获胜所需的点数。在游戏过程中,人类玩家通过使用键盘选择是否玩摇滚,纸张或剪刀。人类玩家也可以通过在任何时间按下Control-D序列来结束游戏。 (如果人类玩家领先,则提前结束游戏不允许确定胜利者。)

输出

该计划将显示每个roshambo回合的获胜者以及得分。在游戏结束时,计算机将显示总冠军和最终得分。

示例会话

欢迎来到Rock,Paper,Scissors!

获胜需要多少分? 3

选择(R)ock,(P)aper还是(S)cissors? [R 人:摇滚计算机:纸计算机胜利!

得分:人类0计算机1 选择(R)ock,(P)aper还是(S)cissors? [R

人类:摇滚电脑:剪刀人类获胜!

得分:人类1计算机1 选择(R)ock,(P)aper还是(S)cissors? P

人类:纸张计算机:纸张平局

print "Welcome to Rock, Paper, Scissors!"  
import random  

n=1  
while n:   
     x = int(raw_input("How many points are required for a win? "))   
     y = raw_input("Choose (R)ock, (P)aper, or (s)cissors? ")
     z1 = ('Rock', 'Paper', 'Scissors')
     z = random.choice(z1)
     if y=='r':
          print "Human: Rock  Computer: " + z
          if z=='Rock':
               print "A draw"
          if z=='Paper':
               print "Computer wins!"
          if z=='Scissors':
               print "Human wins!"   

     elif y=='p':       
          print "Human: Paper Computer: " + z  
          if z=='Paper':   
               print "A draw"  
          if z=='Rock':   
               print "Human wins!"   
          if z=='Scissors':   
               print "Computer wins!"      

     elif y=='s':   
          print "Human: Scissors Coputer: " + z   
          if z=='Scissors':   
               print "A draw"   
          if z=='Paper':'   
               print "Human wins!"   
          if z=='Rock':   
               print "Computer wins!"    

raw_input("Press<enter>")

我的输出就像:它在第一个循环之后不工作。

欢迎来到Rock,Paper,Scissors!
获胜需要多少分? 3
选择(R)ock,(P)aper还是(s)cissors? [R
人:摇滚电脑:摇滚 平局

获胜需要多少分? [R
追溯(最近的呼叫最后):
      文件“temp5.py”,第6行,在中         x = int(raw_input(“胜利需要多少分?”)) ValueError:int()的基数为10的无效文字:'r'
我怎样才能使我的代码简短有效。我可以请你建议如何为这个程序定义函数并使用内置方法

1 个答案:

答案 0 :(得分:0)

不,问题是你输入的输入毫无意义。它询问了一些要点,你输入了一封信。

如果您想让它正常处理此类用户错误,请询问。