2013-03-20 621 views
0

在Django模板中,For loop有一个empty条件,只有当您循环的对象为空时才会设置该条件。 e.g:for python中的/空循环条件

{% for x in my_list %} 
    #do something 
{% empty %} 
    <p> my_list is empty </p> 
{% endfor %} 

这里如果my_list为空,那么它将只是打印my_list is empty

有什么等值的蟒蛇?

我正在使用if-else条件,但这看起来很丑。我试图找到一种不使用的if-else条件涉及的解决方案

我当前的代码:

if len(my_list): 
    for x in my_list: 
     doSomething() 
else: 
    print "my_list is empty" 
+0

不需要使用'len()',空列表是虚假的。 – geoffspear 2013-03-20 12:36:29

回答

4

你必须坚持与if语句,但它可以简化为:

for x in my_list: 
    doSomething() 
if not my_list: 
    print "my_list is empty" 

my_list以来是空的,for循环从未执行循环部分,以及一个空的列表是在布尔上下文False