python测试开发django-99.views视图中 locals() 函数使用

2021/7/4 11:24:25

本文主要是介绍python测试开发django-99.views视图中 locals() 函数使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

前言

locals() 函数是python内置函数,会以字典类型返回当前位置的全部局部变量。

Python locals() 函数

locals() 函数语法:locals()
参数无,返回字典类型的局部变量。
以下实例展示了 locals() 的使用方法:

# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/

a = "hello world"


def func():
    name = "yoyo"
    age = 20
    return locals()

if __name__ == '__main__':
    res = func()
    print(res)

运行结果,返回字典类型的局部变量:{'age': 20, 'name': 'yoyo'}
a变量不是func()函数的局部变量,所以并不会返回

Django 使用 locals() 函数

在 templates 添加 demo.html,模板中引用了3个变量:nkname,qq, city

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>demo title</title>
</head>
<body>
<h1> {{ nkname}} </h1>
<h1> {{ qq }} </h1>
<h1> {{ city }} </h1>
</body>
</html>

views.py 视图函数可以写成这样

from django.shortcuts import render
# Create your views here.
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/

def demo_view(request):
    nkname = "上海-悠悠"
    city = "上海"
    qq = "283340479"
    context = {
                "nkname": nkname,
                "city": city,
                "qq": qq
            }
    return render(request, "demo.html", context=context)

使用locals函数后,代码可以简写成

from django.http import JsonResponse
# Create your views here.
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/

def demo_view(request):
    nkname = "上海-悠悠"
    city = "上海"
    qq = "283340479"
    return render(request, "demo.html", locals())

如果你是个喜欢偷懒的程序员并想让代码看起来更加简明,可以利用 Python 的内建函数 locals() 。它返回的字典对所有局部变量的名称与值进行映射。



这篇关于python测试开发django-99.views视图中 locals() 函数使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程