有人知道我为什么会出现缩进错误,即使它应该是正确的吗?
while not stop:
try:
response += sock.recv(buffer_size)
if header not in response:
print("error in message format")
return # this is where I get the error
except socket.timeout:
stop = True
错误代码python3 ueb02.py localhost 31000 File "ueb02.py", line 40 return ^ SyntaxError: 'return' outside function make: *** [run] Error 1
编辑:感谢您的回答,@ balderman的方法解决了我的问题。感谢所有在这里贡献力量的人:D
答案 0 :(得分:1)
仅当代码是函数的一部分时,才能使用return
。
如果要停止程序流,请使用sys.exit()
。
请参见https://python101.pythonlibrary.org/chapter20_sys.html#sys-exit
答案 1 :(得分:1)
您只能从一个函数中return
个值。
要解决您的问题,可以使用break
语句和print
值来代替返回。