Python 如果列表不为空,则返回true

Python 如果列表不为空,则返回true,python,Python,如果列表不是空的,那么返回true的最符合python的方式是什么 def fun(x): return x != [] 给定一个名为fun的函数,我们在其中传递一个列表x。列表可能看起来像[]或[1,3,4] 如果列表不是空的,我想返回True。我是不是在用最像蟒蛇的方式 我问的原因是,当我执行返回x时,x不是None而不是返回x!=[]我得到了不同的答案。我猜这是因为空列表不被认为是空的?您可以检查列表的长度以查看其中有多少项: def fun(x): return len

如果列表不是空的,那么返回true的最符合python的方式是什么

def fun(x):
    return x != []
给定一个名为
fun
的函数,我们在其中传递一个列表x。列表可能看起来像
[]
[1,3,4]

如果列表不是空的,我想返回True。我是不是在用最像蟒蛇的方式


我问的原因是,当我执行
返回x时,x不是None
而不是
返回x!=[]
我得到了不同的答案。我猜这是因为空列表不被认为是空的?

您可以检查列表的长度以查看其中有多少项:

def fun(x):
    return len(x) > 0
或者您可以将
bool
施展得更像蟒蛇:

def fun(x):
    return bool(x)

把名单投给布尔。bool([1,2,3])=真。bool([])=False。因为如果为空,则希望为True,那么就执行:not(bool(x))。要么
bool(x)
,要么就是
x
。在大多数情况下,您不需要实际的布尔值。“空列表不被视为null”-空列表或任何列表,
不是None
,不是。这里的理想实现部分取决于如果
x
不是列表,您预期会发生什么。这不符合规范。