返回顶部
首页 > 资讯 > 精选 >django中的*args 与 **kwargs用法是什么
  • 199
分享到

django中的*args 与 **kwargs用法是什么

2023-06-14 04:06:00 199人浏览 独家记忆
摘要

这篇文章主要讲解了“Django中的*args 与 **kwargs用法是什么 ”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“djanGo中的*args 与 **kwargs用法是什么 ”吧

这篇文章主要讲解了“Django中的*args 与 **kwargs用法是什么 ”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“djanGo中的*args 与 **kwargs用法是什么 ”吧!

这是python函数可变参数 args及kwargs

*args表示任何多个无名参数,它是一个tuple

**kwargs表示关键字参数,它是一个dict

测试代码如下:

def foo(*args,**kwargs): print 'args=',args print 'kwargs=',kwargs print '**********************' if __name__=='__main__': foo(1,2,3) foo(a=1,b=2,c=3) foo(1,2,3,a=1,b=2,c=3) foo(1,'b','c',a=1,b='b',c='c')

执行结果如下:

args= (1, 2, 3) kwargs= {} **********************args= () kwargs= {'a': 1, 'c': 3, 'b': 2} **********************args= (1, 2, 3) kwargs= {'a': 1, 'c': 3, 'b': 2} **********************args= (1, 'b', 'c') kwargs= {'a': 1, 'c': 'c', 'b': 'b'} **********************

补充:Python中的**kwargs和*args这么理解

Python中经常看到**kwargs和*args这么两个参数,例如下面groupby的参数。

到底是什么意思呢?

怎么使用?

DataFrame.groupby(by=None, axis=0, level=None, as_index= True, sort=True, group_keys=True, squeeze=False, observed=False, **kwargs)

**kwargs和*args意思

*args和**kwargs一般是用在函数定义的时候。二者的意义是允许定义的函数接受任意数目的参数。也就是说我们在函数被调用前并不知道也不限制将来函数可以接收的参数数量。在这种情况下我们可以使用*args和**kwargs。

*args的使用

*args用来表示函数接收可变长度的非关键字参数列表作为函数的输入。我们可以通过以下这个例子来进一步理解*args。

def test_args(nORMal_arg, *args): print("first normal arg:" + normal_arg) for arg in args:  print("another arg through *args :" + arg)test_args("normal", "python", "java", "C#")

上面代码的执行结果如下:

first normal arg: normalanother arg through *args : pythonanother arg through *args : javaanother arg through *args :C#

**kwargs的使用

**kwargs表示函数接收可变长度的关键字参数字典作为函数的输入。当我们需要函数接收带关键字的参数作为输入的时候,应当使用**kwargs。我们可以通过以下这个例子来进一步理解**kwargs。

def test_kwargs(**kwargs): if kwargs is not None:  for key, value in kwargs.iteritems():   print("{} = {}".format(key,value))  # Or you can visit kwargs like a dict() object  # for key in kwargs:  # print("{} = {}".format(key, kwargs[key]))test_kwargs(name="python", value="5")

以上代码的执行结果如下:

name = pythonvalue = 5

以上例子只是*args和**kwargs的基本的使用例子。下面再给出一个用*args和**kwargs来定义能够接收列表输入和字典输入的函数的例子。

使用*args和**kwargs来调用函数

比如我们有如下接收普通输入参数的函数:

def normal_func(arg1, arg2, arg3): print("arg1: " + arg1) print("arg2: " + arg2) print("arg3: " + arg3)normal_func("python", 1, 3)

使用*args和**kwargs来调用这个函数的代码如下:

# 使用*argsargs_list = ("python", 1, 3)normal_func(*args_list)# 使用**kwargskwargs_dict = {"arg3": 3, "arg1": "python", "arg2": 1}normal_func(**kwargs_dict)

以上三段代码的输出均为:

arg1: pythonarg2: 1arg3: 3

汇总

*args和**kwargs都指定义函数时其内部参数数量问题,不指定具体数量,依据使用时具体情况而临场确定数量。

*args针对非关键字参数,**kwargs针对关键字参数。

不仅在定义函数时有空,并且可以作为函数实际调用时作为参数使用。

感谢各位的阅读,以上就是“django中的*args 与 **kwargs用法是什么 ”的内容了,经过本文的学习后,相信大家对django中的*args 与 **kwargs用法是什么 这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: django中的*args 与 **kwargs用法是什么

本文链接: https://lsjlt.com/news/267867.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • django中的*args 与 **kwargs用法是什么
    这篇文章主要讲解了“django中的*args 与 **kwargs用法是什么 ”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“django中的*args 与 **kwargs用法是什么 ”吧...
    99+
    2023-06-14
  • django中的*args 与 **kwargs使用介绍
    这是Python函数可变参数 args及kwargs *args表示任何多个无名参数,它是一个tuple **kwargs表示关键字参数,它是一个dict 测试代码如下: def...
    99+
    2024-04-02
  • Python中*args和**kwargs怎么使用
    本文小编为大家详细介绍“Python中*args和**kwargs怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python中*args和**kwargs怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知...
    99+
    2023-06-29
  • Python中的函数参数传递方法*args与**kwargs怎么使用
    本文小编为大家详细介绍“Python中的函数参数传递方法*args与**kwargs怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python中的函数参数传递方法*args与**kwargs怎么使用”文章能帮助大家解决疑惑,下面跟...
    99+
    2023-07-05
  • 详解Python中*args和**kwargs的使用
    目录1. 引言2. 问题引入3. Python中的*args4. Python中的**kwargs5. 总结1. 引言 在本文中,我们将讨论 Python 中的 *args 和 **...
    99+
    2024-04-02
  • Python编程中*args与**kwargs区别作用详解
    相信学Python的小伙伴肯定有这样的尴尬局面,给一个函数不会用, 原因是:不知道参数列表中的类型是什么意思,比如初学者都会疑问的:*args和**kwargs到底是怎么用。 当你知...
    99+
    2024-04-02
  • 详解Python中的函数参数传递方法*args与**kwargs
    目录定义和传递参数函数参数总结定义和传递参数 parameters 和arguments 之间的区别是什么 许多人交替使用这些术语,但它们是有区别的: Parameters 是函数定...
    99+
    2023-03-09
    Python函数传递方法*args **kwargs Python *args **kwargs Python函数传递方法
  • Python函数中*args和**kwargs来传递变长参数的用法
    单星号形式(*args)用来传递非命名键可变参数列表。双星号形式(**kwargs)用来传递键值可变参数列表。 下面的例子,传递了一个固定位置参数和两个变长参数。 def test_var_args(f...
    99+
    2022-06-04
    函数 变长 参数
  • Python中关于*args与**args的用法及说明
    目录关于 *args与**args的用法*args**kwargs*args和**kwargs是什么意思*args和**kwargs的用途总结关于 *args与**args的用法 *...
    99+
    2023-02-06
    Python中*args用法 Python中**args用法 *args与**args的用法
  • Spring AOP中args()和argNames的含义是什么
    本篇内容介绍了“Spring AOP中args()和argNames的含义是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!args()的...
    99+
    2023-06-20
  • python中*args与**kwarsg及闭包和装饰器的用法
    目录*args与**kwarsg及闭包和装饰器过程Python fun(*args,**kwargs)中*args,**kwargs参数含义及用法1. Python函数中的两种参数2...
    99+
    2024-04-02
  • Django中的unittest应用是什么
    这篇文章主要讲解了“Django中的unittest应用是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Django中的unittest应用是什么”吧!关于断言它是用于对一个确定结果和预...
    99+
    2023-06-25
  • Django中HTTP响应的使用方法是什么?
    Django是一种流行的Web框架,它提供了许多有用的功能,其中一个是HTTP响应。在本文中,我们将探讨Django中HTTP响应的使用方法。 HTTP响应是服务器向客户端发送的数据,用于响应客户端请求。在Django中,我们可以使用Htt...
    99+
    2023-07-07
    http 响应 django
  • Django Admin的使用方法是什么
    本篇内容主要讲解“Django Admin的使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Django Admin的使用方法是什么”吧!创建管理员用户命令行输入...
    99+
    2023-06-22
  • Java main方法中的String[] args怎么使用
    这篇文章主要介绍了Java main方法中的String[] args怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java main方法中的String[] args怎么使用文章都会有所收获,下面我们...
    99+
    2023-06-27
  • Django记录操作日志与LogEntry的使用方法是什么
    这篇文章主要介绍“Django记录操作日志与LogEntry的使用方法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Django记录操作日志与LogEntry的使用方法是什么”文章能帮助大家解...
    99+
    2023-06-26
  • Linux中的args命令怎么用
    这篇文章主要为大家分析了Linux中的args命令怎么用的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“Linux中的args命令怎么用”的知识吧。在使用 L...
    99+
    2023-06-28
  • Django中form指的是什么
    这篇文章将为大家详细讲解有关Django中form指的是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。本文教程操作环境:windows7系统、django2.1,DELL G3电脑。1.概念Djang...
    99+
    2023-06-14
  • Django中virtualenv指的是什么
    这篇文章主要介绍了Django中virtualenv指的是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在我们处理Django中的项目时,由于不同的项目所要求的版本项号不...
    99+
    2023-06-14
  • Django的中间件是什么
    本篇内容主要讲解“Django的中间件是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Django的中间件是什么”吧!什么是中间件(middleware) django 中的中间件(midd...
    99+
    2023-06-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作