34.Python中default、default_if_none、first、last、floatformat过滤器

default过滤器:如果值被评估为False,比如(),"",None,{}等这些在if判断中为False的值,都会使用default过滤器提供的默认值,示例代码如下:
views.py中代码如下:
def default(request):
    context = {
        'value':''
    }
    return render(request,'default.html',context=context)
default.html中代码如下:
<body>
    {{ value|default:"小蚂蚁" }}
</body>

first过滤器:返回列表/元组/字符串中的第一个元素,示例代码如下:

{{ value|first }}

last过滤器:返回列表/元组/字符串中的最后一个元素,示例代码如下:

{{ value|last }}

floatformat过滤器:使用四舍五入的方式格式化一个浮点类型,如果这个过滤器没有传递任何参数,那么只会在小数点后面保留一个小数,如果小数点后面全是0,那么就会保留整数,当然也可以传递一个参数,标识具体要保留几个小数。示例代码如下:

views.py中代码如下:
from django.shortcuts import render
from datetime import datetime


def floatformat(request):
    context = {
        'value1':34.2562,
        'value2':34.0000,
        'value3':34.2365
    }
    return render(request,'floatformat.html',context=context)
floatformat.html中代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
{# 没有传递参数,默认精确小数点后一位,但是如果小数点后全为0,就只保留整数位 #}
    <p>{{ value1|floatformat }}</p>
    <p>{{ value2|floatformat }}</p>
{#  传递参数:精确地位数  #}
    <p>{{ value1|floatformat:3 }}</p>
    <p>{{ value3|floatformat:3 }}</p>
</body>
</html>
floatformat过滤器运行结果:

在这里插入图片描述

发布了76 篇原创文章 · 获赞 2 · 访问量 2746

猜你喜欢

转载自blog.csdn.net/zjy123078_zjy/article/details/104009362
今日推荐