菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Django if 标签


If 语句

一个 if 语句会评估一个变量,如果其值为真,则执行一段代码。

示例

{% if greeting == 1 %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

Elif

elif 关键字表示“如果之前的条件不为真,则尝试此条件”。

示例

{% if greeting == 1 %}
  <h1>Hello</h1>
{% elif greeting == 2 %}
  <h1>Welcome</h1>
{% endif %} 
运行示例 »

Else

else 关键字用于捕获前面条件未覆盖的任何情况。

示例

{% if greeting == 1 %}
  <h1>Hello</h1>
{% elif greeting == 2 %}
  <h1>Welcome</h1>
{% else %}
  <h1>Goodbye</h1>
{% endif %} 
运行示例 »

Operators

上面的示例使用了 == 运算符,用于检查变量是否等于某个值,但你还可以使用许多其他运算符,或者如果你只想检查变量是否不为空,则可以省略运算符。

示例

{% if greeting %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

==

等于。

示例

{% if greeting == 2 %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

!=

不等于。

示例

{% if greeting != 1 %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

<

小于。

示例

{% if greeting < 3 %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

<=

小于或等于。

示例

{% if greeting <= 3 %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

>

大于。

示例

{% if greeting > 1 %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

>=

大于或等于。

示例

{% if greeting >= 1 %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

and

检查是否多个条件都为真。

示例

{% if greeting == 1 and day == "Friday" %}
  <h1>Hello Weekend!</h1>
{% endif %} 
运行示例 »

检查是否其中一个条件为真。

示例

{% if greeting == 1 or greeting == 5 %}
  <h1>Hello</h1>
{% endif %} 
运行示例 »

and/or

组合 andor

示例

{% if greeting == 1 and day == "Friday" or greeting == 5 %}
运行示例 »

Django 的 if 语句中不允许使用括号,因此当你组合 andor 运算符时,重要的是要了解 and 会自动添加括号,而 or 则不会。

这意味着上面的示例由解释器这样读取:

{% if (greeting == 1 and day == "Friday") or greeting == 5 %}

in

检查某个项是否存在于某个对象中。

示例

{% if 'Banana' in fruits %}
  <h1>Hello</h1>
{% else %}
  <h1>Goodbye</h1>
{% endif %} 
运行示例 »

not in

检查某个项是否不存在于某个对象中。

示例

{% if 'Banana' not in fruits %}
  <h1>Hello</h1>
{% else %}
  <h1>Goodbye</h1>
{% endif %} 
运行示例 »

is

检查两个对象是否相同。

此运算符与 == 运算符不同,因为 == 运算符会检查两个对象的 ,而 is 运算符会检查两个对象的 身份

在视图中,我们有两个值相同的对象 xy

示例

views.py:

from django.http import HttpResponse
from django.template import loader

def testing(request):
  template = loader.get_template('template.html')
  context = {
    'x': ['Apple', 'Banana', 'Cherry'], 
    'y': ['Apple', 'Banana', 'Cherry'], 
  }
  return HttpResponse(template.render(context, request))  

这两个对象具有相同的值,但它们是同一个对象吗?

示例

{% if x is y %}
  <h1>YES</h1>
{% else %}
  <h1>NO</h1>
{% endif %}
运行示例 »

让我们尝试用 == 运算符进行相同的示例。

示例

{% if x == y %}
  <h1>YES</h1>
{% else %}
  <h1>NO</h1>
{% endif %}
运行示例 »

两个对象如何能是同一个对象?嗯,如果你有两个对象指向同一个对象,那么 is 运算符就会评估为真。

我们将通过使用 {% with %} 标签来演示这一点,该标签允许我们在模板中创建变量。

示例

{% with var1=x var2=x %}
  {% if var1 is var2 %}
    <h1>YES</h1>
  {% else %}
    <h1>NO</h1>
  {% endif %}
{% endwith %}
运行示例 »

is not

检查两个对象是否不相同。

示例

{% if x is not y %}
  <h1>YES</h1>
{% else %}
  <h1>NO</h1>
{% endif %} 
运行示例 »


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持