簡體   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