我该如何处理这个 PEP8 警告?
How can I handle this PEP8 warning?
我有这样的两行代码:
if validated_data.get('is_shipped') == False: # 管理员取消了发货,则把物流信息删掉
validated_data.update(logistics_company=None, logistics_tracking_no=None)
我正在使用 Pycharm
并且 PEP8 检查已开启。所以 validated_data.get('is_shipped') == False
下面有一个下划线,它显示我 Expression can be simplified. Replace boolean expression with ``not validated_data.get('is_shipped')``
。但是,事实是,当 is_shipped
被显式传递为 False
时,我只想 运行 在 if
语句中编码,而不是当 is_shipped
是 None
。那么,我该如何处理这个 PEP8 检查警告呢?
这里的x == False
相当于not x
,不知道为什么要只用x == False
,PEP8建议:
if not validated_data.get('is_shipped'): # 管理员取消了发货,则把物流信息删掉
validated_data.update(logistics_company=None, logistics_tracking_no=None)
您找到了问题的解决方案:使用显式 is
运算符:
if validated_data.get('is_shipped') is False:
这使您的条件成为一个明确的标识,而不是“真实的”布尔值评估。
我有这样的两行代码:
if validated_data.get('is_shipped') == False: # 管理员取消了发货,则把物流信息删掉
validated_data.update(logistics_company=None, logistics_tracking_no=None)
我正在使用 Pycharm
并且 PEP8 检查已开启。所以 validated_data.get('is_shipped') == False
下面有一个下划线,它显示我 Expression can be simplified. Replace boolean expression with ``not validated_data.get('is_shipped')``
。但是,事实是,当 is_shipped
被显式传递为 False
时,我只想 运行 在 if
语句中编码,而不是当 is_shipped
是 None
。那么,我该如何处理这个 PEP8 检查警告呢?
这里的x == False
相当于not x
,不知道为什么要只用x == False
,PEP8建议:
if not validated_data.get('is_shipped'): # 管理员取消了发货,则把物流信息删掉
validated_data.update(logistics_company=None, logistics_tracking_no=None)
您找到了问题的解决方案:使用显式 is
运算符:
if validated_data.get('is_shipped') is False:
这使您的条件成为一个明确的标识,而不是“真实的”布尔值评估。