2012-03-06 2 views
4

내가 파이썬에서 텍스트 기반의 러시안 룰렛 게임을하고 있지만, 하나의 단지 내 코드를 보면 알 수 있듯이 나는 거의 완성하지 않다 : 경우에도, 어떤 이유파이썬 if 문

#!/usr/bin/env python 
print("The maximum number of bullets is 3") 
bulletcounter = input("How many bullets do you want your gun to have?") 
print(bulletcounter, "bullets") 
paname = input("Enter Player 1's Name: ") 
pbname = input("Enter Player 2's Name: ") 
print(paname.capitalize(), "Vs.", pbname.capitalize()) 
if bulletcounter == 1: 
    bulletcount = 0 
    print(bulletcount) 
    bulletaloc = random.randint(1, 6) 
    while bulletaloc != bulletcount: 
     bulletcount += 1 

사람 bulletcounter에 1을 입력하면 "if bulletcounter == 1"if 문을 트리거하지 않습니다. 어떻게 내가 if statment를 트리거하게합니까 ???

+0

어떤 특정 동작으로 인해'if' 문이 실행되고 있지 않다고 생각합니까? – paxdiablo

답변

4

panamepbname 변수에 raw_input을 사용하십시오. 파일 상단에 import random이어야합니다. bulletcounter에도 int(raw_input("How many..."))을 사용하는 것이 더 좋을 것입니다. 이는 임의의 파이썬 코드를 평가하는 데 사용할 수 있기 때문에 input보다 더 좋습니다.

또한 env 명령을 사용하여 호출하는 Python 버전을 확인하는 것이 좋습니다. 경우, 명령 줄에서 실행할 :

/usr/bin/env python -V 

를 파이썬 3 대신 "파이썬 2.xy"을 받고, 당신은 파이썬 3을 사용하는 것으로 예상하고, 첫 번째 줄은 파이썬 호출하는 것으로 변경하는 것을 고려 3 통역사. 위에서 언급 한 권장 사항은 Python 2를 사용한다고 가정합니다.

+1

파이썬 버전에 의존하지 않습니까? 나는'raw_input'이 파이썬 3에서 제거되었다는 것을 알았습니다. – paxdiablo

+0

@paxdiablo, 그렇지만 코드는'env python'으로 시작합니다. 즉, 어떤 Python 버전이 사용되고 있는지 쉽게 볼 수 없습니다. 우리가 의도 한 것은 Python 3이 스타일을 가지고 있다고 가정 할 수 있지만 OP에 환경에 Python의 두 가지 버전이 설치되어 있고 Python 2가 그 경로에서 더 올라간다면 어떨까요? 필자가 제안한 변경 사항을 적용 할 때, 그것은 Python 2에서 작동합니다. – imm

+0

imm, 나는 당신의 대답이 _ 틀림 없다고 말하지 않았습니다. _ 당신이 가정하고있는 것처럼 보입니다. 그 대답에 주목할 가치가 있습니다. – paxdiablo