繁体   English   中英

局部变量“put”可能在赋值之前被引用

[英]Local variable 'put' might be referenced before assignment

当我执行此代码时,我没有得到 output 并且它说在分配之前可能会引用局部变量。 我不知道它到底是什么。

def funct():
    try:
        no = 2
        put = []
        if no == 1:
            out = 'yes'
            put.append(out)
        elif no == 2:
            out = 'no'
            put.append(out)
        elif no == 3:
            out = 'cant predict'
            put.append(out)
    except ValueError:
        print("Something is wrong")
    else:
        print("Everything is ok")

    put = str(put)[1:-1]
    print(put)
    return put

PyCharm 警告消息的屏幕截图

这是一个类似的问题,它的答案也可能对您有所帮助:

在赋值之前可能会引用局部变量 - Python

这里解决的问题是,有问题的变量在两个“if”条件下被赋值。 这些条件是互补的,但警告出现了,因为可能存在没有一个条件为真的情况,因此变量将保持未初始化状态。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM