【发布时间】:2019-09-25 04:11:21
【问题描述】:
我正在尝试在 try/except 中运行多个函数,但不确定这是否是正确的方法。对于每个函数返回的每个可能的错误,我应该有一个例外吗?
def connect_to_server(ip, port):
try:
sock = networking.create_socket()
sock.connect((ip, port))
_thread.start_new_thread(recv_data, (sock, ))
print("Connected to on port [" + str(port) + "]")
except:
print("Unable to connect to engine.")
return
return sock
【问题讨论】:
-
你不会联系到
return sock。 -
除非您重新提出异常,否则不要使用笼统的
except:子句。这不是口袋妖怪,您不想全部捕获它们,您不想捕获内存错误或键盘中断或生成器退出信号。 first 异常将被捕获,块的其余部分不被执行。如果这是目标,那很好,只是限制你捕获的内容。 -
是的。尝试以原子性为目标
标签: python-3.x