在 Python if 语句中使用 break
Using break in Python if statement
我遇到了初学者的错误,我看不出哪里出错了。
如果命令行参数[0] 为空,我将尝试中断程序。
我在 macports 上 运行 python。
import sys
script = sys.argv[0]
ip = sys.argv[1]
port = sys.argv[2]
if script is None:
print 'script argv is: ' + script
break
print "[+] The script name is: " + script
print "[+] The IP is: " +IP+" and the port is: " +port
我一直收到这个错误。
mars13:python beebs$ python sys.py
File "sys.py", line 9
break
SyntaxError: 'break' outside loop
第9行指的是break。
break
只能在while
或for
循环中使用;您正在尝试在 if
语句中使用 in。
要提前退出脚本,请使用 sys.exit()
function。
注意 sys.argv[0]
总是一个字符串(在某些情况下它可以是一个 空 字符串),所以 if script is None
是 总是 会是错误的。对于您的脚本,它将设置为 'sys.py'
.
您的脚本不应与 Python 标准库模块同名;你将你的命名为 sys.py
,只是因为该模块是内置的并且不需要从单独的文件加载,所以你可以不用它,所以在 这种特定情况下 你很幸运,没有对导入造成任何问题。但是,在一般情况下,您最终会遇到导入错误,因为您的脚本将被导入。
我遇到了初学者的错误,我看不出哪里出错了。
如果命令行参数[0] 为空,我将尝试中断程序。
我在 macports 上 运行 python。
import sys
script = sys.argv[0]
ip = sys.argv[1]
port = sys.argv[2]
if script is None:
print 'script argv is: ' + script
break
print "[+] The script name is: " + script
print "[+] The IP is: " +IP+" and the port is: " +port
我一直收到这个错误。
mars13:python beebs$ python sys.py
File "sys.py", line 9
break
SyntaxError: 'break' outside loop
第9行指的是break。
break
只能在while
或for
循环中使用;您正在尝试在 if
语句中使用 in。
要提前退出脚本,请使用 sys.exit()
function。
注意 sys.argv[0]
总是一个字符串(在某些情况下它可以是一个 空 字符串),所以 if script is None
是 总是 会是错误的。对于您的脚本,它将设置为 'sys.py'
.
您的脚本不应与 Python 标准库模块同名;你将你的命名为 sys.py
,只是因为该模块是内置的并且不需要从单独的文件加载,所以你可以不用它,所以在 这种特定情况下 你很幸运,没有对导入造成任何问题。但是,在一般情况下,您最终会遇到导入错误,因为您的脚本将被导入。