别问我为啥保留x,y,因为 以下函数允许计算两个数的乘积
以下函数允许计算两个数的乘积
# -*- coding: utf-8 -*- def product(x, y=1,*args): acc=x*y for arg in args: acc=acc*arg return acc # 测试 print('product(5) =', product(5)) print('product(5, 6) =', product(5, 6)) print('product(5, 6, 7) =', product(5, 6, 7)) print('product(5, 6, 7, 9) =', product(5, 6, 7, 9)) if product(5) != 5: print('测试失败!') elif product(5, 6) != 30: print('测试失败!') elif product(5, 6, 7) != 210: print('测试失败!') elif product(5, 6, 7, 9) != 1890: print('测试失败!') else: try: product() print('测试失败!') except TypeError: print('测试成功!')
运行结果:
product(5) = 5 product(5, 6) = 30 product(5, 6, 7) = 210 product(5, 6, 7, 9) = 1890 测试成功!
您好,我想问一下在函数调用的时候,Python解释器自动按照参数位置和参数名把对应的参数传进去。那product(5, 6, 7)不应该y就是等于6了吗?
def product(x, *args): sum = 1 for arg in args: sum = sum 星号arg return x 星号 sum
Sign in to make a reply
日暮归途风萧萧
别问我为啥保留x,y,因为
以下函数允许计算两个数的乘积
运行结果: