在布尔li上可以简化表达式

2024-05-19 23:26:12 发布

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

我有下面的代码来复制一个PyCharm警告

Expression can be simplified

This expression detects equality comparison with a boolean literal.

seq_group = []
if seq_group == []: # warning here
   print("it is empty.")

如果我把密码改成

if seq_group is None:

将修复警告,但真正的问题是None[]emplty list是同一回事吗?

干杯


Tags: 代码none警告ifisgroupbesimplified
1条回答
网友
1楼 · 发布于 2024-05-19 23:26:12

are None and [] empty list the same thing?

不,这将导致错误的行为:

seq_group = []

if seq_group is None:
    print("it is empty")

这不会打印任何内容,None[]完全不同,从值和标识的角度来看。None表示没有值,[]表示没有值的列表。这种混淆可能是由于这两种情况都是在条件句中计算False而引起的。

该警告可能是因为您可以简单地将seq_groupnot一起使用,而不是将文本与==一起使用:

if not seq_group:
    print("it is empty")

相关问题 更多 >