2014-01-16 2 views
0

값이 두 개 있습니다. 그 중 하나는 파일에서 나오고 그 중 하나는 데이터베이스에서 가져옵니다. 두 값은 모두 숫자입니다. 내 코드는 Python, 2.7 버전입니다. 내가 코드를 아래에 사용하는 경우파이썬 IF 문에서 값이 같은지 확인하십시오.

, 그것은 마법처럼 작동하고

if int(val1) == int(val2) : 
    print "what ever action it will do" 

내 질문에 그 수표를 만들 수있는 다른 방법이 있다면 무엇입니까? 이것을 할 수있는 방법인가요?

+0

완전히 허용됩니다. –

+0

기본적인 작업을 수행하는 데 좋은 방법입니다. 문제가 해결되면 확인하십시오. – Netwave

+0

수치 평등을 확인하고 싶다면 바로 거기에 있습니다! – Lix

답변

3

데이터베이스 (또는 파일 읽기 모듈)에서 int를 제공하는 경우 int-conversions 중 하나를 생략 할 수 있지만 그렇지 않으면 괜찮습니다. 일반적으로 : 앞에있는 공백을 건너 뜁니다.

값 중 하나가 int (예 : 다른 문자열)로 변환되지 않을 가능성이있는 경우 try-except-block을 사용하여 해당 오류를 처리해야합니다.

0

이렇게 할 수있는 방법인가요?

이전 코드에 따라 다릅니다. 언뜻 보면 작동합니다.

다른 방법으로 확인하려면?

당신은 그것을 트릭 방법을 확인할 수 있습니다

In [1]: import sys 
In [2]: val1 = "12.50"; val2 = 12.5 
In [3]: (float(val1) == float(val2) and sys.stdout.write("what ever action it will do")) 
what ever action it will do 
+0

의 그런 식으로 쓸 것이라고/db 밖으로 나와서 그들을 변환 말할 것입니다. 작동하지만 매우 Pythonic하지 않습니다 – volcano

+0

@ volcano 그냥 농담. 업데이트를 참조하십시오. –

+0

멍청한 놈의 주위에 농담 할 때 조심해야한다. 그들은 심각하게 당신을 데려 갈 수 있습니다 – volcano

0

나는 모두 숫자이고, 다음 주조가 필요하지 않은 입력합니다. 아래 코드와 같이 사용할 수 있습니다.

if(val1==val2): 
    print "what ever action it will do" 
+0

ok이 파일이 varchar (x) 정의 된 셀의 db에서 오는 경우 어떻게됩니까? 예 그들은 숫자이지만 파이썬이 어떻게 반응할까요? 값을 문자열 또는 정수로 집계합니까? –

관련 문제