【发布时间】:2022-01-23 20:09:53
【问题描述】:
我想连接两台电脑,但是当其中一台电脑没有打开时,我收到连接被拒绝的异常,因为另一台电脑没有打开,所以我想当这个异常发生时我只是重新-执行此部分直到成功,等其他PC开机时。
这就是我所拥有的:
def main():
s = socket.socket()
host = "Alex-PC"
port = 8080
s.connect((host,port))
if traceback.format_exception(ConnectionRefusedError):
main()
我认为if 语句可能有效,但我不知道如何为这个问题编写if 语句。
【问题讨论】:
-
你读过tutorial了吗?
-
您的错误是专注于“回溯”一词。回溯是附加到异常的信息,告诉您错误发生的位置。您正在寻找的是“异常处理”。
-
这里您可能还需要小心,因为递归调用
main()会以惊人的速度达到默认阈值。 -
您还应该阅读this earlier part of the tutorial,它教您如何重复内容。
-
更多完整示例请参见stackoverflow.com/questions/23294658/…。
标签: python python-3.x exception