2012-11-27 162 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

的哪些错误?我的break位于if循环中。

+5

'if'不是一个循环。你不需要在给定的代码中打破它。一旦进入'if',它将不会执行'else'。 –

回答

5

if语句不是循环。你不需要break

您可以使用break以尽早离开forwhile循环。

+0

这本书使用python 2.5,这可能是为什么语法非常关闭(im编码2.7),它应该工作,无论我删除中断,对吗? – user1734291

+1

Python版本之间没有改变。你确定这个陈述不应该是在你没有向我们展示的循环中吗?如果不是,你需要一本新书:) – Chris