python中函数参数*args和**kw的区别

1.函数与参数(实参)  

  在python中创建函数是def,创建函数名是def f(),f函数名字,def f(a,b),这里的a,b是两个参数,函数名是自定义的,参数也是自定义,随意就好。看图如下效果:

  

  这里f(1,2)是实参,然后调用上面的函数。

  下面讲解下*args和**kw的区别。

2.*args

  

  这里的*后面的值是自定义的,只要不是数字就行,定义成*abc,*ccc都可以,len()是函数,它的意思是返回字符串长度。然后前面的a,b是普通参数,print a print b就是回显1,2,因为我调用f(1,2,3,4,5),除去两个普通参数,剩余的三个值为4,5,6,顾名思义长度为3。

3.**kw

  

  **和*自定义都是一样的,**后面也是自定义,后面不是数字就行。我这里定义的是**d,这里就和*不一样,这里你们会发现这里多了个循环,然后在print ,你们有可能看不懂,你们把眼光看到底下的f()的函数调用,调用最后的答案为一个键值对的形式,然后再看上面的print x+‘:‘+str(c[x])就会变得轻松,你们会说str是什么,str()是一个函数,他的含义是可以将数字型变量或常量改变成字符型变量或常量。所以当我们调用他时,name=‘zhangsan‘这里就要加引号,因为这是字符串,而age=13却不要加引号,因为13是整数类型。

4.*和**联合用法

  

  因为我前面分开讲了*和**的用法,合并起来,他们不变,位置上没有变化。当你看到这里你会说*和**有什么区别,是的,他们的区别在于,*是包含其他数字的,在这里面*c是一个tuple,而**d在这里包含的是字符串或者根据print x+‘:‘+str(d[x]),判断类型为xx=xx的,包含于d里面,这样我们就能很清晰的去区分并且学习它!

原文地址:https://www.cnblogs.com/AmilyWilly/p/8469940.html

时间: 2024-10-10 14:20:21

python中函数参数*args和**kw的区别的相关文章

python中函数参数的引用方式

值传递和引用传递时C++中的概念,在python中函数参数的传递是变量指向的对象的物理内存地址!!! python不允许程序员选择采用传值还是传引用.Python参数传递采用的肯定是"传对象引用"的方式.这种方式相当于传值和传引用的一种综合.如果函数收到的是一个可变对象(比如字典或者列表)的引用,就能修改对象的原始值--相当于通过"传引用"来传递对象.如果函数收到的是一个不可变对象(比如数字.字符或者元组)的引用,就不能直接修改原始对象--相当于通过"传值

js中函数参数基本类型和引用类型的区别

高级程序设计中说明,所有函数的参数都是按值传递的. 基本类型 向参数传递基本类型的值时,被传递的值会被复制给对应的命名参数 function addTen(num){ num=+10; return num; } var count=20; var result=addTen(count); alert(count);//20 在函数内部,num的值被加上10,但不影响外部count变量的值 引用类型 在向参数传递引用类型的值时,把这个值在内存中的地址复制给对应的局部变量,如果这个局部变量没有重

python 关键字参数和可变参数*args,和**kw

python 关键字参数和可变参数*args,和**kw 觉得有用的话,欢迎一起讨论相互学习~Follow Me 感谢莫烦老师 详情 可变参数 顾名思义,函数的可变参数是传入的参数可以变化的,1个,2个到任意个.当然可以将这些 参数封装成一个 list 或者 tuple 传入,但不够 pythonic.使用可变参数可以很好解决该问题,注意可变参数在函数定义不能出现在特定参数和默认参数前面,因为可变参数会吞噬掉这些参数. def report(name, *grades): total_grade

python 中函数的参数

一.python中的函数参数形式 python中函数一般有四种表现形式: 1.def function(arg1, arg2, arg3...) 这种是python中最常见的一中函数参数定义形式,函数参数之间用逗号分隔,调用的时候的参数必须与定义的时候相同,且参数顺序与形参一一对应. ? 1 2 3 4 5 6 7 8 9 def myfunction(a, b):     print a,b #正确调用 myfunction(3,7) #错误调用 myfunction(3) myfunctio

Python中函数的参数传递与可变长参数

1.Python中也有像C++一样的默认缺省函数 1 def foo(text,num=0): 2 print text,num 3 4 foo("asd") #asd 0 5 foo("def",100) #def 100 定义有默认参数的函数时,这些默认值参数位置必须都在非默认值参数后面. 调用时提供默认值参数值时,使用提供的值,否则使用默认值. 2.Python可以根据参数名传参数 1 def foo(ip,port): 2 print "%s:%d

Python中函数的参数-arguments

归纳起来,Python中函数的定义形式和调用形式主要有如下几种形式: # 函数的定义形式 def func(name) # 匹配positional参数或者keyword参数 def func(name=value) # 如果不传,有默认参数 def func(*name) # 将额外的positional参数转换成一个tuple,然后赋给name def func(**name) # 将额外的keyword参数转换成一个dictionary,然后赋给name def func(*other,

python中函数的使用方法

本文主要介绍:python中函数的使用方法 代码: #!/usr/bin/env python# -*- coding:utf-8 -*-# author by lh #函数里默认形参如果有初始值的话,调用的时候如果不写实参,则默认是形参里的初始值(ps:如果有多个形参,有默认值的参数一定要放到后面)def f1(a='rt'): temp='Welcome '+a return tempret=f1('lh')print retret1=f1()print ret1 #实参可以是任意类型的参数

Python的函数参数

前言 python中 函数的参数可以分为两大类形参和实参~ def func(x, y): # x, y 就是形参 print(x, y) func(2, 3) # 2, 3 就是实参 - 形参 形参(如上面的x, y)仅在定义的函数中有效,函数调用结束后,不能再使用该形参变量.在调用函数时,该函数中的形参才会被分配内存,并赋值:函数调用结束,分配的内存空间也随即释放~ - 实参 即在调用函数时,向该函数的形参传递确定的值(必须是确定的值).传递的值可以是常量.变量.表达式.函数等形式~ 在形参

Python中函数的初览

Python中函数的初览 一.函数 1.什么是函数 为了完成某一功能的代码的集合,叫做函数,函数就是行为,就是动作 2.定义 Python中函数的定义,使用关键字def(define function 定义函数) 3.函数的调用 函数定义后,不会自动执行,需要调用者调用才会执行. 4.函数的分类 1)有无参数 2)有无返回值 例:这是一个有参数且有返回值的函数 原文地址:https://www.cnblogs.com/Mr-Liu---/p/11553210.html