zoukankan      html  css  js  c++  java
  • 函数-非固定参数

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

    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’}

  • 相关阅读:
    《插件式GIS应用框架的设计与实现》一书中一个小问题
    ArcGIS API for Silverlight 入门学习笔记(一)hello world 补充问题
    ArcGIS API for Silverlight 入门学习笔记(一):hello world
    20120906CSS学习笔记
    ASP Response
    20120830笔记
    ASP Request
    201299日记
    20120907学习笔记
    LINKSERVER跨服务器之间的数据拷贝
  • 原文地址:https://www.cnblogs.com/kingforn/p/10890611.html
Copyright © 2011-2022 走看看