每天一点python——day78

python 复制代码
#每天一点Python------78
#函数的参数定义
'''
个数可变的位置参数
定义函数时,可能无法事先确定传递的位置实参个数时,使用可变的位置参数
使用*号定义个数可变的位置形参
结果为一个元组
【我在传参的时候,不知道最后到底传几个,所以就用个数可变的位置参数】
'''
#例:
def h1(*canshu):#括号里面的*,canshu为参数名字【可以随你定】
    print(canshu)
    #print(canshu[0]),[0]的意思是,不管你传多少参数,它可以只输出第一个
h1(1)#调用函数,传一个参数
h1(1,2)#传两个
h1(1,2,3)#传3个
'''
结果为:
(1,)
(1, 2)
(1, 2, 3)
是元组
以上是函数定义时的可变的位置参数,
为什么是可变的位置参数:按位置顺序一个个传的,传多少都可以
'''
#二
'''
个数可变的关键字形参
定义函数时,无法事先确定传递的关键字实参的个数时,使用可变的关键字行参
使用**定义个数可变的关键字形参
结果为一个字典
【无法事先确定传递的关键字实参的个数,就使用可变的关键字形参】
'''
#例
def h2(**guanjianzi):
    print(guanjianzi)

#调用
h2(a=10)
h2(a=20,b=30,c=40)
'''
结果:
{'a': 10}
{'a': 20, 'b': 30, 'c': 40}
结果为字典
a为健,10为值
不管来多少关键字,我都可以给你用
'''
#我们常用的print函数里面就有
#如何打开

'''
注意,定义可变的位置参数只能定义一个
def han3(*q.*w):#定义两个
    pass
会报错,所以我注释了
'''

'''
定义可变的关键字参数也只能定义一个
def h4(**e,**m):
    pass
也同样报错,我注释了
'''
#综上所述,定义函数的过程中,可变的位置参数,关键字参数只能有一个
#思考:如果定义一个函数过程中,既有个数可变的位置参数,也有个数可变的关键字参数,怎么办?
#例
def h5(*aq1,**ag2):
    pass
#发现程序不报错,说明可以
'''
def h6(**g1,*g2):
    pass
发现程序报错,则说明
在函数定义过程中,既有个数可变的关键字参数,也有个数可变的位置参数
要求个数可变的位置形参,放在个数可变的关键字形参之前
'''
复制代码
#每天一点Python——78
#函数的参数定义
相关推荐
一点媛艺30 分钟前
Kotlin函数由易到难
开发语言·python·kotlin
魔道不误砍柴功2 小时前
Java 中如何巧妙应用 Function 让方法复用性更强
java·开发语言·python
_.Switch2 小时前
高级Python自动化运维:容器安全与网络策略的深度解析
运维·网络·python·安全·自动化·devops
测开小菜鸟3 小时前
使用python向钉钉群聊发送消息
java·python·钉钉
萧鼎4 小时前
Python并发编程库:Asyncio的异步编程实战
开发语言·数据库·python·异步
学地理的小胖砸4 小时前
【一些关于Python的信息和帮助】
开发语言·python
疯一样的码农4 小时前
Python 继承、多态、封装、抽象
开发语言·python
Python大数据分析@5 小时前
python操作CSV和excel,如何来做?
开发语言·python·excel
黑叶白树5 小时前
简单的签到程序 python笔记
笔记·python
Shy9604185 小时前
Bert完形填空
python·深度学习·bert