在 for 循环中增加 x 的值

Increasing the value of x in a for loop

我正在尝试编辑 bigalgs 的值,但是当我实际打印 it 的值时,它只是吐出bigalgs 的初始值为 0。为什么会这样?我是否以错误的方式增加了 bigalgs 的值?我认为这是简单地使用 + 号...也许 for 循环 ?求助!

(供参考,这里的alg表示algorism


class scinoteConvert:
    def __init__(self, num):
    
        alglog = []
        alglist = []
        bigalgs = 0
        num = str(num)

        for alg in num:
            alglist.append(alg)

        for alg in alglist:
            if int(alg) < 1:
                alglog.append(True)
            else:
                alglog.append(False)
                print(bigalgs)
                bigalgs + 1

        print(alglist, alglog, bigalgs)

input = int(input('Insert num: '))

if input < 1:
    exit('Error! Cannot calculate negative values!')

scinoteConvert(input)

我认为你应该写 bigalgs = bigalgs + 1 而不是 bigalgs + 1。 当您编写 bigalgs + 1 时,您不会更改变量的值。

你的代码是正确的,但是你应该在语法上加1

bigalgs += 1

代码将变为:

class scinoteConvert:
def __init__(self, num):

    alglog = []
    alglist = []
    bigalgs = 0
    num = str(num)

    for alg in num:
        alglist.append(alg)

    for alg in alglist:
        if int(alg) < 1:
            alglog.append(True)
        else:
            alglog.append(False)
            print(bigalgs)
            bigalgs += 1

    print(alglist, alglog, bigalgs)



input = int(input('Insert num: '))

if input < 1:
    exit('Error! Cannot calculate negative values!')

scinoteConvert(input)

你必须使用+= 1,所以bigalgs + = 1,所以你的解决方案是

bigalgs =  bigalgs +=1 

because +=1 is for incrementing a variable by one in a loop,因此如果对象是可变的,就地修改它。你只写了 bigalgs + 1.

以下是如何正确增加双鱼的价值。这样当你打印 bigals 值时,你不应该吐出它的初始值 0.

class scinoteConvert:
    def __init__(self, num):
    
        alglog = []
        alglist = []
        bigalgs = 0
        num = str(num)

        for alg in num:
            alglist.append(alg)

        for alg in alglist:
            if int(alg) < 1:
                alglog.append(True)
            else:
                alglog.append(False)
                print(bigalgs)
                bigalgs =  bigalgs +=1

        print(alglist, alglog, bigalgs)

input = int(input('Insert num: '))

if input < 1:
    exit('Error! Cannot calculate negative values!')

scinoteConvert(input)