如何使用Python代码调试问题?

时间:2017-03-20 05:12:31

标签: python

def sum(x):
    sum=0
    for x in range (10):
        sum+=x
    return sum
print (sum(10))

在这句话中,如果我输入sum(10)或sum(100),它会得到相同的答案,为什么会这样?

5 个答案:

答案 0 :(得分:1)

def sum(x):
    sum=0
    for i in range (x):
        sum+=i
    return sum
print (sum(100))

它给你相同的结果,因为你在范围(10)中使用相同的常数。使用你传入的变量。

def sum(y):
    sum = 0
    for x in range(10):
        sum += y
    return sum
print(sum(10))

这是第二个,但根据您的问题,如果您想要将变量添加10次。

答案 1 :(得分:0)

此范围是固定的。需要将此range (10)更改为range (x),因为范围固定为10。

答案 2 :(得分:0)

这个for循环将x设置为0并一遍又一遍地运行代码直到它达到10.如果你想要添加x 10次,你必须做这样的事情:

def sum(y):
    sum = 0
    for x in range(10):
        sum += y
    return sum
print(sum(10))

如果你想将所有数字加到x上,你可以这样做:

def sum(x):
    sum=0
    for i in range(x):
        sum+=i
    return sum
print(sum(10))

答案 3 :(得分:0)

因为你没有使用你发送给函数的参数。范围函数只能使用当前代码范围设置为10. See range function doc

可能你可以这样做

def sum(x):
    sum=0
    for y in range (x):
        sum+=y
    return sum
print (sum(10))

答案 4 :(得分:-1)

你试试,

   def sum(x):
        sum=0
        for y in range (x):
            sum+=y
            print(sum)
        return sum
    print (sum(100))