当前位置:
首页 >
零基础学Python:函数的参数详解
发布时间:2025/3/20
19
豆豆
生活随笔
收集整理的这篇文章主要介绍了
零基础学Python:函数的参数详解
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
- 必备参数
- 关键字参数
- 默认参数
- 不定长参数
1 必需的参数:
必须参数须以正确的顺序传入函数,调用的数量必须和声明时的一样
def f(name,age):print('I am %s,I am %d'%(name,age))f('alex',18) f('alvin',16)2 关键字参数:
关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值。使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值。
''' 学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! ''' def f(name,age):print('I am %s,I am %d'%(name,age))# f(16,'alvin') #报错 f(age=16,name='alvin')3 缺省参数(默认参数):
调用函数时,缺省参数的值如果没有传入,则被认为是默认值。下例会打印默认的age,如果age没有被传入:
def print_info(name,age,sex='male'):print('Name:%s'%name)print('age:%s'%age)print('Sex:%s'%sex)returnprint_info('alex',18) print_info('铁锤',40,'female')4 不定长参数
你可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,和上述2种参数不同,声明时不会命名。
# def add(x,y): # return x+ydef add(*tuples):sum=0for v in tuples:sum+=vreturn sumprint(add(1,4,6,9)) print(add(1,4,6,9,5))加了星号*的变量名会存放所有未命名的变量参数。而加(**)的变量名会存放命名的变量参数
def print_info(**kwargs):print(kwargs)for i in kwargs:print('%s:%s'%(i,kwargs[i]))#根据参数可以打印任意相关信息了returnprint_info(name='alex',age=18,sex='female',hobby='girl',nationality='Chinese',ability='Python')###########################位置def print_info(name,*args,**kwargs):#def print_info(name,**kwargs,*args):报错print('Name:%s'%name)print('args:',args)print('kwargs:',kwargs)returnprint_info('alex',18,hobby='girl',nationality='Chinese',ability='Python') # print_info(hobby='girl','alex',18,nationality='Chinese',ability='Python') #报错 #print_info('alex',hobby='girl',18,nationality='Chinese',ability='Python') #报错注意,还可以这样传参:
''' 学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! ''' def f(*args):print(args)f(*[1,2,5])def f(**kargs):print(kargs)f(**{'name':'alex'})5.高阶函数
至少满足下面一个条件的函数:
- 接受一个或者多个函数作为输入
- 输出一个函数
总结
以上是生活随笔为你收集整理的零基础学Python:函数的参数详解的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 零基础学Python:作用域详解
- 下一篇: python基础教程:多态、多继承、函数