Python中with标签的使用详解

1.在python DTL模板中,想要定义变量,可以通过“with”语句来实现。

2.“with”语句有两种使用方式:

第一种是“with xx=xx”的形式,注意,使用这种形式进行定义变量的话,=号两边不能有空格,否则的话,DTL模板就会识别不了。
第二种是“with xxx as xxx”的形式。这种with定义变量的形式,DTL模板中会自动生成代码快的格式,相对来说,较为简单。因此推荐使用在这种形式进行定义DTL模板变量。

index.html中代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
{# 使用with语句块定义变量,并且这个变量只能在with变量的语句块中使用。 #}
    {% with books.1 as shz %}
        <p>{{ shz }}</p>
    {% endwith %}

{# 当然也可以使用另外一种方式使用with。 #}
{# 注意,如果使用=的话,=号两边不能有空格,否者的话,DTL会识别不了#}
    {% with xyj=books.3 %}
        <p>{{ xyj }}</p>
    {% endwith %}
</body>
views.py文件中代码如下所示:
from django.shortcuts import render


def index(request):
    context = {
       'books': [
           '三国演义',
           '水浒传',
           '红楼梦',
           '西游记'
       ],
    }
    return render(request,'index01.html',context=context)

3.定义的变量只能在with语句中使用,在with语句块外面使用取不到这个变量。

猜你喜欢

转载自www.cnblogs.com/guyan-2020/p/12199071.html