Pycharm 提示的这个警报大家如何解决的?有强迫症。

出现这个错误,大家是如何解决的? Local variable 'xxx' might be referenced before assignment,我有强迫症。

一段简单的代码。

if method == ToolRequest.GET:
    result = self.session.get(url)
elif method == ToolRequest.POST:
    result = self.session.post(url, data=data)
print(f"请求 URL {url}\n 返回状态 {result.status_code}\ncookie {result.cookies}\n 返回内容 {result.content}")
print()
return result

附上图吧,大家都知道这是 Pycharm 吧

1
2

最佳答案

哈哈,我找到解决方法了。这个论坛,很有意思啊,那个提问的智慧花了很长时间才答完。

第一种解决方法:在 elif 后面在 在一个 else: result = None,让 result 必定会被初始化。

第二种解决方法:
直接先对result初始化None

import typing
result: typing.Optional[requests.Response] = None
4年前 评论
讨论数量: 2

哈哈,我找到解决方法了。这个论坛,很有意思啊,那个提问的智慧花了很长时间才答完。

第一种解决方法:在 elif 后面在 在一个 else: result = None,让 result 必定会被初始化。

第二种解决方法:
直接先对result初始化None

import typing
result: typing.Optional[requests.Response] = None
4年前 评论
pardon110

先声明并初始化,后使用

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!