猜测是是try、except进入receive()函数子层数量太多了,嵌套太多层(据说默认1000层)超出python规定范围导致报错。。。以后估计不能使用这种结构了。。。通过sys.setrecursionlimit()函数可以更改嵌套层数上限
import sys
sys.setrecursionlimit(10000)
那么怎么才能让函数出错后继续运行呢?
我直接加个while True循环将try\except包裹就行了:
或者还可以使用尾递归?不过经过测试发现python貌似不支持尾递归。。。