zoukankan      html  css  js  c++  java
  • Python元组_参数长度可变

    函数的参数可以有任意多个;用星号*开头来作为形式参数名,可以将所有实际参数收录到一个元组中。

    例如 printall 就可以获取任意多个数的参数,然后把它们都打印输出:

    >>> def printall(*args):

    ...     print(args)

    ... 

    你可以随意命名收集来的这些参数:

    >>> printall(1, 2.0, '3', 'apple')

    (1, 2.0, '3', 'apple')

    与聚集相对的就是分散了;如果有一系列的值,然后想把它们作为多个参数传递给一个函数,就可以用星号*运算符。

    比如 divmod 要求必须是两个参数;但如果给它一个元组,是不能进行运算的:

    >>> t = (7, 3)

    >>> divmod(t)

    Traceback (most recent call last):

      File "<stdin>", line 1, in <module>

    TypeError: divmod expected 2 arguments, got 1

    但如果拆分这个元组,就可以了:

    >>> divmod(*t)

    (2, 1)

    很多内置函数都用到了参数长度可变的元组。比如 max 和 min 就可以接收任意数量的参数:

    >>> max(1, 2, 3)

    3

    但求和函数 sum 就不行了:

    >>> sum(1, 2, 3)

    Traceback (most recent call last):

      File "<stdin>", line 1, in <module>

    TypeError: sum expected at most 2 arguments, got 3

    结束。

  • 相关阅读:
    软工个人项目作业
    软工个人博客作业(2)
    软工第一次作业-热身
    OO第四单元
    OO第三单元
    OO第二单元总结
    面向对象UML单元总结及课程总结
    JML单元总结
    面向对象设计与构造第二单元总结
    OO第一单元小结
  • 原文地址:https://www.cnblogs.com/liusingbon/p/13210018.html
Copyright © 2011-2022 走看看