2010-04-23 4 views
-1

웹 사이트에서 문자열을 검색하고이 문자열의 위치가 예상 위치에 있는지 확인합니다. 나는 문자열이 182 번째 문자에서 시작 알고, 나는 온도를 인쇄하면 심지어 182는, 그러나, if 문은 182 (182)Python if 문이 예상대로 작동하지 않습니다.

일부 코드

f = urllib.urlopen(link) 

#store page contents in 's' 
s = f.read() 
f.close() 
temp = s.find('lettersandnumbers') 

if (htmlsize == "197"): 
    #if ((s.find('lettersandnumbers')) == "182"): 
    if (temp=="182"): 
    print "Glorious" 
    doStuff() 
    else: 
    print "HTML not correct. Aborting." 
else: 
    print htmlsize 
    print "File size is incorrect. Aborting." 
+0

오 ... 코드를 이해할 수 있도록 답을 편집 해 주시겠습니까? 나는 아무것도 이해하지 못했지만 일부 int 대 문자열 비교를 봅니다. (int를 반환하는 것을 찾습니다) – YuppieNetworking

+0

Nevermind ... already answered – YuppieNetworking

+2

당신은 모든 괄호가 필요하지 않습니다. 이것은 C가 아닙니다. –

답변

3

임 아니다 말한다는 것을 말해 것 파이썬 전문가,하지만 아픈 촬영을하지

if (temp == 182) 

왜처럼 시도? 답변은 SilentGhost입니다. 여기에는 유형

+1

유형 (temp)을 사용하여 유형을 확인할 수도 있습니다. '182'인 경우 을 반환하고 182 인 경우 을 반환해야합니다. if (str (temp) == '182')를 사용하여 값을 문자열과 비교하는지 확인할 수도 있습니다. –

+1

@ 그렉 : 당신이 할 수있는 동안, 왜 그걸하고 싶습니까? 'str.find'의 반환 값은 잘 정의되고 이해되었으므로 더 복잡한 것을 추가 할 필요가 없습니다 – SilentGhost

+0

@Greg,하지만 그 모든 것을하면 당신은 무슨 일이 일어나고 있는지 알 수 없을 것입니다. –

관련 문제