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,大概跟缩进和排序有关。一开始我还以为是我没有定义函数就直接调用了,结果调了好几遍都没有结果。
感谢回答!
unpackConfirm
在 unpackCon()
内部定义,超出了其他函数的范围。您需要 return 变量才能访问它。
尝试:
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()
我对 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,大概跟缩进和排序有关。一开始我还以为是我没有定义函数就直接调用了,结果调了好几遍都没有结果。
感谢回答!
unpackConfirm
在 unpackCon()
内部定义,超出了其他函数的范围。您需要 return 变量才能访问它。
尝试:
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()