【jinja2】算术、比较、逻辑、其它运算符 您所在的位置:网站首页 过滤参数表达式逻辑连接符号怎么写出来 【jinja2】算术、比较、逻辑、其它运算符

【jinja2】算术、比较、逻辑、其它运算符

2024-07-01 17:05| 来源: 网络整理| 查看: 265

算术

Jinja 允许你用计算值。这在模板中很少用到,但是为了完整性允许其存在。支持下面的 运算符:

+

把两个对象加到一起。通常对象是素质,但是如果两者是字符串或列表,你可以用这 种方式来衔接它们。无论如何这不是首选的连接字符串的方式!连接字符串见 ~ 运算符。 {{ 1 + 1 }} 等于 2 。

-

用第一个数减去第二个数。 {{ 3 - 2 }} 等于 1 。

/

对两个数做除法。返回值会是一个浮点数。 {{ 1 / 2 }} 等于 {{ 0.5 }} 。

//

对两个数做除法,返回整数商。 {{ 20 // 7 }} 等于 2 。

%

计算整数除法的余数。 {{ 11 % 7 }} 等于 4 。

*

用右边的数乘左边的操作数。 {{ 2 * 2 }} 会返回 4 。也可以用于重 复一个字符串多次。 {{ ‘=’ * 80 }} 会打印 80 个等号的横条。

**

取左操作数的右操作数次幂。 {{ 2**3 }} 会返回 8 。

比较

==

比较两个对象是否相等。

!=

比较两个对象是否不等。

>

如果左边大于右边,返回 true 。

>=

如果左边大于等于右边,返回 true 。

{ "Hello " ~ name ~ "!" }} 会返回(假设 name 值为 ''John' ) Hello John! 。

()

调用一个可调用量:{{ post.render() }} 。在圆括号中,你可以像在 python 中一样使用位置参数和关键字参数: {{ post.render(user, full=true) }} 。

. / []

获取一个对象的属性。(见 变量 )

If 表达式

同样,也可以使用内联的 if 表达式。这在某些情况很有用。例如你可以用来在一个 变量定义的情况下才继承一个模板,否则继承默认的布局模板:

{% extends layout_template if layout_template is defined else 'master.html' %}

一般的语法是  if  else  。

else 部分是可选的。如果没有显式地提供 else 块,会求值一个未定义对象:

{{ '[%s]' % page.title if page.title }}


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有