2013-01-24 2 views
-4

나는 파이썬에서 변수의 값을 추가하려하지만 작동하지 않는 것 같습니다.어떻게 파이썬 변수의 값을 추가합니까?

값이 True 또는 False 인 경우에도 변수의 값을 함께 추가하려고합니다. 아무도 도와 줄 수 있습니까? 그 도움이된다면

final=0 
print ("welcome to my binary converter") 
print("first number is the smallest value") 
print ("please enter a 0 or a 1 five times") 

in1 = input("number 1 please") 

if in1 == 1: 
    final=final+1 
elif in1 == 0: 
    final=final+0 
elif ValueError 
    print("please enter a 1 or a 0") 

in2 = input("number 2 please") 

if in2 == 1: 
    final=final+2 
elif in2 == 0: 
    final=final+0 
elif ValueError 
    print("please enter a 1 or a 0") 

in3 = input("number 3 please") 

if in3 == 1: 
    final=final+4 
elif in3 == 0: 
    final=final+0 
elif ValueError 
    print("please enter a 1 or a 0") 

in4 = input("number 4 please") 

if in4 == 1: 
    final=final+8 
elif in4 == 0: 
    final=final+0 
elif ValueError 
    print("please enter a 1 or a 0") 

in5 = input("number 5 please") 

if in5 == 1: 
    final=final+16 
elif in5 == 0: 
    final=final+0 
elif ValueError 
    print("please enter a 1 or a 0") 
print(final) 

그리고 나는이 웹 사이트, 파이썬 책을 찾고 시도, 도움이 온라인, 파이썬 교사 등

또한, 나는 버전 3.3.0이있다.

야곱

첫 번째 숫자는

는 0 또는 1 다섯 번을 입력하세요 가장 작은 값이

내 바이너리로 변환

환영

번호 1 please1

입력하세요 1 또는 0

번호 2 please0

A가 1 또는 0

번호 3 please0

1을 입력하세요 입력하세요 또는 a 0

number 4 please1

,210

입력하십시오 1 또는 0

수 5 please1

입력하세요 1 또는 0

0

가 최종

+1

정말요? 튜토리얼은 갈 길이 아닙니다. http://learnpythonthehardway.org/book/ –

+0

"값이 true 또는 false 인 경우에도 무엇을 의미합니까?" 변수를 추가하기 위해 작성한 코드는 무엇입니까? 어떻게 된 거예요? 대신에 어떻게해야한다고 생각하니? 왜 그런 일이 일어나야한다고 생각하니? 당신이 "진실하고 틀린 것을 추가 할 때"당신이 원하는 결과는 무엇입니까? 왜? –

답변

1

의 값을 변경하지 보인다 두 변수가 모두 정수 또는 문자열이지만 부울이 아닌 경우에만 변수를 함께 추가 할 수 있습니다 (물론 가능하지만 효과가 없습니다). 예를 들면 :

>>> var = 1 
>>> var2 = 4 
>>> var + var2 
5 

>>> stringvar = 'Hello ' 
>>> stringvar2 = 'world.' 
>>> stringvar + stringvar2 
'Hello world.' 

>>> boolean1 = True 
>>> boolean2 = False 
>>> boolean1 + boolean2 
1 

작동하는 이유는 이유는

>>> True == 1 
True 
>>> False == 0 
True 

편집 :

당신이 더 많은 코드에 추가 한 것, 내가 보여 줄게 무엇을 다시하고있어.

구문 오류가 발생하는 이유는 elif ValueError이 있기 때문입니다. 이것은 작동하지 않습니다. 첫째, ValueError조차도 존재하지 않는다. input()을 가질 수 없다.당신이 숫자 0 또는 1인지 여부를 확인하려면 다음을 수행

in1 = input("number 1 please") 

if in1 == 1: 
    final += 1 # I've also changed this. final += 1 is the same as final = final + 1 
elif in1 == 0: 
    final += 0 
elif in1 != 1 or in1 != 0: 
    print("please enter a 1 or a 0") 

은 내가보기 엔 어떤 파이썬 자습서 위에 읽는 것이 좋습니다. 이것은 몇 가지 기본 구문입니다.

+0

및 수레 ... 및 목록 ... 및 .. – wim

+0

@ user2007306 어떤 오류가 발생합니까? 그것은 나를 위해 잘 일하고있는 것 같습니다 파이썬 2.7 – TerryA

+0

잘못된 구문은 내가 무엇을 얻었고 그것이 작동하면 입력이 1 또는 0이면 최종 변경을 등록하지 않을 것입니다 그래서 그냥 0을 인쇄합니다 Jacob – user2007306

관련 문제