hhjdsd 发表于 2020-3-25 23:02:18

python课后作业第十八讲的动动手第零题,题目我有点看不懂啥意思。

求解释{:10_254:} {:10_254:}
动动手:
   
0. 编写一个符合以下要求的函数:
   
    a) 计算打印所有参数的和乘以基数(base=3)的结果
    b) 如果参数中最后一个参数为(base=5),则设定基数为5,基数不参与求和计算

yexing 发表于 2020-3-25 23:25:16

举个例子:
def func(*items, base=3):
函数中有一个基数(base)参数,默认为3.
函数的实现过程就是计算 *items 参数的和,与 base 的值相乘后返回。
“如果参数中最后一个参数为(base=5),则设定基数为5” 意思就是用户可以自行传入值使 base 参数的值为用户传入的值。
“基数不参与求和计算” 就是提醒你不要把基数也加到 *item 里一起计算和,基数是要和 *item 的和相乘的。

sunrise085 发表于 2020-3-26 11:21:13

函数的参数可以是不定长度的,就是不确定有几个参数,这时若不定长参数后面还有其他参数则需要使用关键字指出。
比如下面这个例子,若最后一个参数不用base指出,则会被认为也是arg的一部分。
def sum(*arg,base=3):#base是关键字参数,必须用base指出,否则所有参数都被认为是不定长参数arg中的一个
       
        result=0
        for i in arg:
                result+=i
        return result*base

print(sum(1,2,5))      #返回(1+2+5)*3
print(sum(1,2,base=5)) #返回(1+2)*5

heidern0612 发表于 2020-3-26 13:45:19

默认参数和传入参数。
页: [1]
查看完整版本: python课后作业第十八讲的动动手第零题,题目我有点看不懂啥意思。