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)

myfunction(2, 3, 5)

  

2、def function(arg1, arg2 = xx,arg3 = yy...)

这种定义方式其实和第一种类似,不同的只是提供了一个默认值。调用的时候有默认参数的形参可以不提供值。

?





1

2

3

4

5

6

7

8

9

def myfunction(a, b=0):

    print
a,b

#正确调用

myfunction(1)

myfunction(3,9)

myfunction(a =
3, b =
9)

#还可以这样调用

myfunction(b =
9, a =
3)

  

3、def function(*arg)

这种方式是在不确定参数的个数的时候用到,有时候我不知道该传多少个实参给函数,在形参前面加上一个*表示这个函数的参数不确定,参数可以是0个或多个。如果我们将传进来的参数打印下来,发现参数是一个元组的形式。

?





1

2

3

4

5

6

def myfunction(*arg):

    print
arg

myfunction(34, 43, 2)

>>>(34, 43, 2)

 

4、def function(**arg)

形参前面加两个星号表示传入的形参在函数内部将表示成字典形式。调用该方法的形式是:functiong(a=xx, b=yy...)

?





1

2

3

4

5

6

def myfunction(**arg):

    print
arg

myfunction(a =
2, b =
4, c =
8)

>>>{a:2, b:4, c:8}

  注:
如果以上四种参数形式出现在同一个函数中的时候,参数的优先级是1>2>3>4,
也就是参数解析方式是按这个顺序来解析的。

python 中函数的参数,布布扣,bubuko.com

时间: 2024-10-08 14:59:01

python 中函数的参数的相关文章

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中函数的参数定义和可变参数

转自:http://www.cnblogs.com/tqsummer/archive/2011/01/25/1944416.html  简洁易懂啊,好文 刚学用Python的时候,特别是看一些库的源码时,经常会看到func(*args, **kwargs)这样的函数定义,这个*和**让人有点费解.其实只要把函数参数定义搞清楚了,就不难理解了. 先说说函数定义,我们都知道,下面的代码定义了一个函数funcA def funcA():  pass    显然,函数funcA没有参数(同时啥也不干:D

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中函数参数的引用方式

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

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把函数作为参数 在2.1小节中,我们讲了高阶函数的概念,并编写了一个简单的高阶函数: def add(x,y,f): return f(x)+f(y)print add(-5,9,abs) >>> 14 根据函数的定义,函数执行的代码实际上是: abs(-5) + abs(9) 由于参数 x, y 和 f 都可以任意传入,如果 f 传入其他函数,就可以得到不同的返回值. 任务 利用add(x,y,f)函数,计算: 计算平方根可以用函数: >>> math.s

Python中函数的初览

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

如何理解javaSript中函数的参数是按值传递

本文是我基于红宝书<Javascript高级程序设计>中的第四章,4.1.3传递参数小节P70,进一步理解javaSript中函数的参数,当传递的参数是对象时的传递方式. (结合资料的个人理解,有不正确的地方,希望大家指出,谢谢啦!) 参考的资料有: https://github.com/simongong/js-stackoverflow-highest-votes/blob/master/questions21-30/parameter-passed-by-value-or-referen

python中的可变参数

def foo(*args, **kwargs): print 'args = ', args print 'kwargs = ', kwargs print '---------------------------------------' if __name__ == '__main__': foo(1,2,3,4) foo(a=1,b=2,c=3) foo(1,2,3,4, a=1,b=2,c=3) foo('a', 1, None, a=1, b='2', c=3) 输出结果如下:arg