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

  • 相关阅读:
    173. Binary Search Tree Iterator
    199. Binary Tree Right Side View
    230. Kth Smallest Element in a BST
    236. Lowest Common Ancestor of a Binary Tree
    337. House Robber III
    449. Serialize and Deserialize BST
    508. Most Frequent Subtree Sum
    513. Find Bottom Left Tree Value
    129. Sum Root to Leaf Numbers
    652. Find Duplicate Subtrees
  • 原文地址:https://www.cnblogs.com/kingforn/p/10890611.html
Copyright © 2011-2022 走看看