1,sum=0移到for x in L:下面可以吗?最后两行代码什么意思,不懂注释就是问题 , 还有像这样参数只有一个默认参数可以吗?
1 回答
已采纳
清波
TA贡献165条经验 获得超90个赞
第一个问题:
sum 的初始化赋值,不能放到 for 下面, 因为放进去的话,每次循环都会给 sum 重新赋值成0, 则不能求 列表的平方和了。
最后两句 是调用了 square_of_sum() 函数,并且打印其结果。
第二个问题:
关于 Python 函数的 参数的问题, 其实和大多数语言的参数差不多, 有很多种,我就不展开详细讲了, 只说最常见的两种, 其他的可以找专门的文章看。
def fn(a,b=3): print a print b fn(2,3) ## 输出 2 3 ## 解释,上面这个函数有两个参数, 其中第一个 a 就是 位置参数, 而第二个b=3 则是 关键字参数, 这两种参数的 ## 区别一,就是 如上面所写,一个只有参数名,另外一个则是 "参数名=值"。 ## 区别二, 位置参数不可以省略, 关键字参数可以省略,如下 fn(4) ## 输出 4 3 ## 最后关于你的疑问, 为什么位置参数赋值了, 还可以在 调用的时候赋其他的值, 这个情况可以想象成, 函数定义 ## 时的赋值 是个默认值,如果我们 调用传参的时候不给关键字参数 传参,则调用默认;传参,则调用传的值。 ## 最后的问题, 只有一个默认参数(关键字参数)是可以的。 ## 关键字参数的调用传参 是可以直接传值,而不是必须写成 "参数名=值" 格式,如下: fn(7,8) ## 输出 7 8 ##这个就是关键字参数
添加回答
举报
0/150
提交
取消