Python 的type hint和循环引用

本文讨论了在Python编程中遇到的循环引用问题,特别是在使用type hint时出现的错误。通过示例代码展示了如何利用`if TYPE_CHECKING:`来避免这种问题,并提到了Python 3.7对此问题的改进。同时,分享了几个Stack Overflow上的相关参考资料,供读者深入学习。
摘要由CSDN通过智能技术生成
# Python 的type hint和循环引用


这两天拿 Python 在写电梯应用的多线程程序,碰到了这样的问题,我用 flask-socketio + HTML 做用户界面,这里碰到一个循环引用的问题:


1. *main.py*


```python
...
from LiftUtils.LiftController import LiftController


app = Flask(__name__)
bootstrap = Bootstrap(app)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)
...
```


1. *LiftUtils.LiftController*


```python
from typing import Tuple


from LiftUtils.Job import Job
from LiftUtils.Lift import Lift




class LiftController:
    def __init__(self, socketio=None):


        self._socket = socketio
        self._lifts: Tuple[Lift] = tuple(Lift(i, self) for i in r
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值