• Day5


    传入的参数的个数是可变的。
    例子:定义一个函数,通过给出一组数,返回这组数中最大值与最小值的和。
        def msum(numbers):
            r = max(numbers) + min(numbers)
            return r
           
        >>>msum([1,2,3,4,5])
        6
        numbers需要为list或者tuple,相当于:
        a = [1,2,3,4,5]
        msum(a)
       
    如果使用可变参数,那么调用函数时的变化如下:
        未使用可变参数:msum([1,2,3,4,5])
        使用可变参数:     msum(1,2,3,4,5)
    将函数参数改为可变参数:
        def msum(*numbers):
            r = max(numbers) + min(numbers)
            return r
          
           运行结果:
            >>> def msum(*numbers):
            ...     r = max(numbers) + min(numbers)
            ...     return r
            ...
            >>> msum(1,2,3,4)
            5
            >>> msum(1,2,5,7,8,9,123,323123)
            323124
            在参数前加*号后,参数numbers接收到的是一个tuple,因此在代码完全不变的情况下,调用函数可以传入任意个参数。
           
    调用可变参数
        如果已经有了一个list或tuple,调用一个可变参数的方法:
       
            >>> a = [1,2,3,4,5,6]
            >>> msum(a[0],a[1],a[2],a[3],a[4],a[5])
            7
       太麻烦了。
       在list或tuple前加*号,把list或tuple的元素变为可变参数传进函数!
            >>> a = [1,2,3,4,5,6,7,8,10,12,123123123,122]
            >>> msum(*a)
            123123124
           
            *a 表示把a这个list的所有元素作为可变参数传递到msum函数中。
            这种写法非常常见,非常有用。
      
  • 相关阅读:
    Hibernate学习(2)- hibernate.cfg.xml详解
    Hibernate学习(1)- 初识
    linux(centos6) 常用操作
    linux(centos6) 下安装 postgresql-9.3.1.tar.gz
    struts2 值栈分析
    struts2 paramsPrepareParamsStack拦截器简化代码(源码分析)
    idea 配置maven
    idea 使用github
    idea 配置svn
    idea 配置tomcat
  • 原文地址:https://www.cnblogs.com/konggg/p/8989141.html
Copyright © 2020-2023  润新知