首页 > 解决方案 > 完成此问题需要协助

问题描述

我设法完成了这个问题的第一部分。但我不知道如何完成第二部分。我设法完成了 x 和 y 的输入。

练习 1 该函数接受输入一个数字 x 和一个数字列表 y,并返回一个值,如下所示:

• 如果x 是奇数,则fun_exercise_1 从y 的所有元素中减去1,然后返回其和。

• 如果x 是偶数,则fun_exercise_1 将y 的每个元素乘以2,然后返回其和。

• 如果 x 为零,则 fun_exercise_1 返回 y 中所有元素的总和

     def fun_exercise_1(x,y):
print ("enter value for x")

x = float (input ("x:"))
y = []

print ("Enter 4 numbers for a list. Use a negative number to finish")
yy = float(input ("Enter Number:"))

while yy >=0.0 :
     y.append(yy)
     yy = float(input("Next number:"))

标签: pythonpython-3.x

解决方案


这是一种方法。虽然它不验证第一个参数是整数还是第二个参数是列表。它只是希望那些能够正确运行。

def test(x, y):
    if x == 0:
        sum = 0
        for i in y:
            sum += i + sum
        return sum
    elif x % 2 == 0:
        sum = 0
        for i in y:
            sum += i * 2
        return sum
    else:
        sum = 0
        for i in y:
            sum += i - 1
        return sum

这将通过在调用 test() 时传递一个整数和一个列表作为参数来测试。


推荐阅读