首页 > 解决方案 > 在函数中使用增量变量不起作用

问题描述

我是 python 新手,并试图用它解决一些问题。我正在尝试增加一个变量,然后在函数中使用该增加的变量,但看起来它没有使用增加的变量。

所以这是我的代码:

var = 0
line_num = 0 + var

def incerement_problem(line_number):
    if line_number == 1:
        print("true")
    else:
        global var
        var += 1

incerement_problem(line_num)
incerement_problem(line_num)

因此,在第二个函数调用之后,代码应该返回“true”消息,而不是它只是增加变量,看起来它使用的是原始值 0。

我看到的是 var 变量正在正确递增。但是 line_num 变量保持为 0。

我不明白是什么问题希望有人可以向我解释。

标签: python-3.xvariables

解决方案


你需要不line_num增加var

line_num = 0

def incerement_problem(line_number):
    if line_number == 1:
        print("true")
    else:
        global line_num
        line_num+=1

incerement_problem(line_num)
incerement_problem(line_num)

输出:

true

更新:

line_num = 0
var = 0

def incerement_problem(line_number):
    if line_number == 1:
        print("true")
    else:
        global line_num
        global var
        var = 1
        line_num+=var

incerement_problem(line_num)
incerement_problem(line_num)

推荐阅读