Django中的Kwargs

15 投票
3 回答
25008 浏览
提问于 2025-04-16 13:24

什么是Kwarg!!?

我正在学习django这个语言,跟着一个教程走,结果遇到了这个概念。

如果有人能发个简单的例子,帮我理解这个东西是为什么和怎么用的,我会非常感激。

3 个回答

1

查看这篇文章

def print_kwargs(**kwargs):
    for key in kwargs:
        print("The key {} holds {} value".format(key, kwargs[key]))


print_kwargs(a=1, b=2, c="Some Text")

输出结果:

The key a holds 1 value
The key b holds 2 value
The key c holds Some Text value
1

试试这个很棒的解释,来自Digital Ocean

简单来说,**kwargs是一个字典,用来存放参数。你可以先把它传递给一个视图函数,比如说:

def fun(req, **kwargs)

然后在这个函数内部,你可以这样获取里面的值:

kwargs.get('key_name')

10

根据关键词参数的文档,由@Ignacio Vazquez-Abrams指出

**kwargs让你可以处理那些你事先没有定义的命名参数

在调用一个函数时,关键词参数必须在位置参数之后

所有传入的关键词参数必须与函数接受的参数之一匹配(比如,actor不是parrot函数的有效参数),而且它们的顺序并不重要

撰写回答