python中参数组 *args,**kwargs,位置参数(一个星*返回元祖),关键字参数(两个星*返回字典)...

# 参数组 *args

def send_mail(*names):
for name in names:
print('%s发测试报告!'%name)

send_mail() # 不传参数!
send_mail('路明') # 传一个参数:发测试报告! ('路明',) 返回元祖
send_mail('曹雪莲','dxl','zhangshan') # 传多个参数:发测试报告! ('曹雪莲', 'dxl', 'zhangshan')


def szz(name,age,sex,addr,phone,qq,mail):
print("打印")

# 关键字传参 ,可不用按顺序
szz(name='dongxl',qq='877766766',age=18,addr='shanghai',mail='12@12.com',sex='nv',phone=148383838)

# 也可以一起用,但是要先写位置参数,在写关键字参数,关键字参数后面不能再出现位置参数
szz('dongxl',qq='877766766',age=18,addr='shanghai',mail='12@12.com',sex='nv',phone=148383838)


# 总结
# 调用的函数的时候,可以全部都用位置参数,位置是--对应的,必须按照位置来传参
# 也可以用关键字参数,不用指定关键字,不需要按顺序来
# 也可以一起用,但是要先写位置参数,在写关键字参数,关键字参数后面不能再出现位置参数

def xiaohei(**info):
print(info)

# 参数是否传,不是必填的
# 位置传参不可以 xiaohei('1','2')
# 关键字传参可以 返回字典
# 是否限制参数的个数 不限制
xiaohei()
xiaohei(name='donxl',age=18,phone='139188777')
# xiaohei('码云','20') #报错

def op_mysql(host,port,user,passwd,db):
print(host)
print(port)
print(user)
print(passwd)
print(db)
db_info=['127.0.0.1',3306,'root','123456','szz']
op_mysql(*db_info) # 一个星* 调用函数,代表拆开这个列表,挨个对应好

db_info2={
'host':'127.0.0.1',
'port':3306,
'user':'szz',
'passwd':'123456',
'db':'szz'
}
op_mysql(**db_info2) # 两个*调用函数,把字典解开,host=127.0.0.1,port=3306
 

转载于:https://www.cnblogs.com/skyxiuli/p/10740714.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值