Discuss / Python / python3.9.6,服务器那段代码运行的时候,为什么一运行客户端就报错

python3.9.6,服务器那段代码运行的时候,为什么一运行客户端就报错

Topic source

UnboundLocalError: local variable 'data' referenced before assignment

是在服务器里面报的错

我知道了,原因是因为我用了:=运算符,但是写的时候有点问题。原来的代码时这样子写的:

while data := sock.recv(1024) and data.decode('utf-8') != 'exit':

但是实际运行的时候是把

sock.recv(1024) and data.decode('utf-8') != 'exit'

整个部分,而不是and前面部分,赋值给data的,右边表达式里面就有data,当然会报错


  • 1

Reply