新人求助,欢迎各位大佬
关于这个代码,def Sum(A, B=2, C=4):
return sum()
print(Sum(A=7, C=21))
print(Sum(7))
print(Sum(7,1))
已知答案为
第一题 30
第二题 13
第三题 12
问:如何给出上述答案,及每一步的含义是什么 1,7 + 2 + 21
首先你需要知道sum的用法,它就是把一个可迭代对象内部的所有元素加在一起。
然后第一次传入了两个参数,把A设为了7,把C设为了21,B有默认参数了,所以结果是30
2,7 + 2 + 4
只传入了一个参数,是7,由于它是第一个,所以对应A,剩下两个有默认参数了,所以结果是13
3,7 + 1 + 4
传入了两个参数,7和1,根据位置,他们分别对应A和B,C有默认参数,所以结果是12. 本帖最后由 sunrise085 于 2020-8-7 17:43 编辑
三个参数B和C都有默认值,
只输入一个参数而且没有给定关键字的话,会赋值给A,B和C使用默认值,就像第二题;
输入两个参数,而且都没有给定关键字的话,会按顺序赋值给A和B,C使用默认值,就像第三题;
输入的关键字,给定关键字,就按照关键字分别赋值,没有赋值的使用默认值
注意若没有给A赋值 是会出错的 qiuyouzhi 发表于 2020-8-7 17:40
1,7 + 2 + 21
首先你需要知道sum的用法,它就是把一个可迭代对象内部的所有元素加在一起。
然后第一次传 ...
收到,谢谢大佬解答
页:
[1]