2016-04-05 26 views
-7

私はPythonを学習し、岩、紙、はさみのゲームをコード化しています。ロックペーパーはさみPython

私はUbuntuでIDLEを使用しています。コードはうまくコンパイルされましたが、私はまだこれを実行することができません。 IDLEはこのシステムで正常に動作しています。私はこれを解決するのに役立ちます。事前に

おかげで、最後の行DEDENT

#!/usr/bin/env python2 
import time 
import random 

rock = 1 
paper = 2 
scissors = 3 

names = {rock:"rock", paper:"Paper",scissors: "Scissors"} 
rules = {rock: scissors, paper: rock,scissors: paper} 

player_score = 0 
computer_score = 0 



def start(): 
    print "Start" 
    while game(): 
    pass 
    scores() 

def game(): 
    player = move() 
    computer = random.randint(1,3) 
    result(player,computer) 
    return play_again() 
def move(): 
    while True: 
     print 
     player = raw_input("Rock = 1 paper = 2 scissor = 3") 
     try: 
      player = int(player) 
      if player in (1,2,3): 
       return player 
     except ValueError: 
       pass 
     print "Enter number" 

def result(player,computer): 
    print "Computer threw {0}!".format(names[computer]) 
    if player == computer: 
    print ("Tie") 
    else: 
    if rules(player) == computer: 
     print("You win") 
     player_score += 1 

    else: 
     print("Computer wins") 
     computer_score += 1 
def play_again(): 
    answer = raw_input("Play Again") 
    if answer in ("y" "Y"): 
     return answer 
    else: 
     print ("Thanks") 

def scores(): 
    global player_score, computer_score 
    print "Player", player_score 
    print "Computer", computer_score 

    start() 
+0

何が問題なのですか? – Carcigenicate

+2

質問がありますか? "私は動作しないプログラムを書いた"というコードダンプが続き、それは物語(かなり興味深いものでもあります)であり、質問ではありません。 – timgeb

+7

私はあなたがロックペーパーハサミのpythonと呼ばれるゲームを作ったと思ってここに来ていました。しかし、これはちょうどロックペーパーはさみです。私はとても失望している。 – idjaw

答えて

0

start()。インタプリタはスクリプトの上位レベルを実行しますが、インデントによってその行は関数の一部になりますscore()

+0

こんにちはありがとうございました! –

関連する問題