2012-11-27 2 views
-1

break이 if 문 안에있을 때 내 스크립트가 루프 외부에있는 break이라는 오류를 반환합니다. 왜? 이 문제를 어떻게 해결할 수 있습니까? 무엇이 잘못 책에서루프에서 벗어날 때 루프 밖으로 벗어나는가?

if hook_address: 
    hooks.add(dbg,hook_address,2,ssl_sniff,None) 
    print "[*] nspr4.PR_Write hooked at: 0x%o8x" %hook_address 
    break 
else: 
    print "[!] Error: Couldn't resolve hook address!" 
    sys.exit(-1) 

c:\0xic-zex\Python>sniffer.py File "C:\0xic-zex\Python\sniffer.py", line 32 break SyntaxError: 'break' outside loop

을하는 스크립트를 작성? 내 breakif 루프에 있습니다.

+5

'if'는 루프가 아닙니다. 당신은 주어진 코드에서 그것을 벗어날 필요가 없습니다. 일단'if'를 입력하면 else를 실행하지 않습니다. –

답변

5

if 문은 루프가 아닙니다. 그들 중 break은 필요하지 않습니다.

for 또는 while 루프를 빠져 나가려면 break을 사용합니다.

+0

이 책은 파이썬 2.5를 사용합니다. 그 이유는 구문이 매우 떨어져서 (2.7로 코딩되어 있습니다), 중단을 제거하더라도 관계없이 작동해야합니다. – user1734291

+1

파이썬 버전 간에는 변경되지 않았습니다. 이 진술서가 당신이 우리에게 보여주지 않는 루프에 있지 않아야한다고 확신합니까? 그렇지 않다면 새로운 책이 필요합니다 :) – Chris

관련 문제