蟒蛇:变量值没有改变

时间:2020-07-04 18:44:00

标签: python

我已经在初始化时定义了一个变量,现在,如果我想更改它不会改变的值。

File=""

def pathValue():
    if File:
        print("file path: " + File)
    else:
        File = "abc.txt"
        print("file path: " + File)

pathValue()

上面是我的示例代码。它应将“文件”变量的值更改为“ abc.txt”,但不起作用。相反,它显示如下,

file path:

如果变量为空,那么如何绕过if条件?

2 个答案:

答案 0 :(得分:3)

您可以将global File添加为函数的第一行,以便python将File视为全局变量而不是局部变量。

答案 1 :(得分:3)

变量File在函数pathValue()的范围之外,可以在函数内部声明它:

def pathValue():
    File=""
    if File:
        print("file path: " + File)
    else:
        File = "abc.txt"
        print("file path: " + File)

pathValue()

或将其设为全局变量:

File=""

def pathValue():
    global File
    if File:
        print("file path: " + File)
    else:
        File = "abc.txt"
        print("file path: " + File)

pathValue()