Closed vivodi closed 2 years ago
如果返回值需要被使用,如判断是否为None,则需要显示地编写 return None
参数不写None也报错?这看起来就像在说这个方法可以传None
def decode(response: Response | None) -> str | None:
如果你觉得不应该传入 None
,要不要我将14-15行删去,然后修改函数签名?
我也认为不应传入 None
因为在用 decode()
之前,一般都要先用 check_network_state()
检查 response
是否为 None
。再者用到这个函数的代码好像都没有判断其返回值是否为 None
,而是直接将其返回值当做非 None
来用的。
也可以吧 我看request也定义了 -> Response | None:
类型也算对得上
将不能为
None
的值改为用索引运算符访问,而不是使用get()
方法,如selector.get('detail_sources').values()
改为selector['detail_sources'].values()
。因为selector.get('detail_sources')
为None
还是会报错: