码迷,mamicode.com
首页 > 其他好文 > 详细

函数-非固定参数

时间:2019-05-19 20:43:17      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:个数   school   不用   name   user   固定   users   UNC   公司   

# 刚才你写的报警,发给某个人。

def send_alert(msg,user)

#那如果公司规模扩大了,要求发给10个人或更多怎么办呢?

#难道你要重复敲10行或更多的代码?

def send_alert(msg,user1)

def send_alert(msg,user2)

def send_alert(msg,user3)

def send_alert(msg,user4)

#其实不用这么麻烦!

def send_alert(msg,*users)

send_alert(‘cpu过高‘,‘alex’,‘jack’.....)

#如果参数中出现 *users,传递的参数就可以不再是固定个数,传过来的所有参数打包元组给(*users)

#方式一:

send_alert(‘cpu过高‘,‘alex’,‘jack’.....)

#方式二:

send_alert(‘cpu过高‘,*[‘alex’,‘jack’.....])

 

def func(name,*args,**kwargs)

  print(name,args,kwargs)

func(‘alex‘,22,‘tesla‘,‘500w‘)

#执行结果:

alex (22, ‘tesla’, ‘500w’){}

#未定义的参数是放到后面字典里的

列子:

func(‘alex‘,22,‘tesla‘,‘500w‘,addr=‘山东’,num=12442323)

#执行结果:

alex (22, ‘tesla’, ‘500w’){‘num’:12442323,‘addr’:‘山东’}

#如果是字典呢会是什么样的效果我来看一下

d = {‘degree’:‘primary school’}

func(‘peiqi’,d)

打印结果:

peiqi ({‘degree’:‘primary school’},){}

#那怎么样才能传到后面参数里去呢

func(‘peiqi’,**d)

打印结果:

peiqi (){‘degree’:‘primary school’}

 

函数-非固定参数

标签:个数   school   不用   name   user   固定   users   UNC   公司   

原文地址:https://www.cnblogs.com/kingforn/p/10890611.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!