我如何处理此PEP8警告?

2024-04-28 16:42:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两行代码,如下所示:

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显式传递时,而不是在is_shippedNone时,在if语句中运行代码。那么,我如何处理这个PEP8检查警告


Tags: 代码none信息falsedatagetifis
2条回答

这里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:

这使您的条件成为显式标识,而不是“真实”布尔计算

相关问题 更多 >