簡體   English   中英

Python:嘗試調用函數時出現未定義變量錯誤?

[英]Python: Getting an undefine variable error when trying to call a function?

我對Python還是很陌生,但似乎遇到了問題。 當嘗試調用定義該變量的另一個函數時,出現未定義的錯誤。

def unpackCon():
    unpackConfirm = input("Unpack contents?[Y/N] ")

def unpackConScript():
    if unpackConfirm == "y":
        print ("Unpack confirmed.")
    elif unpackConfirm == "n":
        print ("Unpack unconfirmed.")
    else:
        print ("Value %s is not valid.") % (unpackConfirm)
        unpackCon()

unpackCon()
unpackConScript()

了解Python,它可能與縮進和排序有關。 起初我相信是因為我沒有先定義函數就調用了函數,但是我多次切換順序卻沒有結果。

欣賞答案!

unpackConfirmunpackCon()內部定義,並且在其他函數中超出范圍。 您需要返回變量才能訪問它。

嘗試:

def unpackCon():
    unpackConfirm = input("Unpack contents?[Y/N] ").lower()
    return unpackConfirm

def unpackConScript():
    unpackConfirm = unpackCon()

    if unpackConfirm == "y":
        print ("Unpack confirmed.")
    elif unpackConfirm == "n":
        print ("Unpack unconfirmed.")
    else:
        print ("Value %s is not valid.") % (unpackConfirm)
        unpackCon()

unpackConScript()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM