簡體   English   中英

如何檢查是否存在全局或局部變量

[英]How can i check if there is a global or local variable

我想檢查該變量是否存在,如果存在則打印它。

x = 10 

def example(): 

z = 5

print("X (Global variable) : ",x) 
print("Z (example() : ",z)

example() 

print(z) 

當我添加print(z)時,它顯然會引發錯誤,因為沒有名為 z 的變量。

謝謝你們的答案。 (特別是 Jasper、kevin 和 icantcode)

x = 10 
def example(): 

z = 5

example() 


try:
    print(z)
except NameError:
    print("There is no global variable called Z! ")

內置方法locals()globals()返回本地/全局變量名稱及其值的字典。

if 'z' in locals():
    print(z)

最直接的方法是嘗試使用它,如果失敗,請執行其他操作:

try:
    something_with(z)
except NameError:
    fallback_code()

您還可以查看locals()globals()的字典

if 'z' in locals() or 'z' in globals():
    print(z)
else:
    fallback_code()
try:
    print(z)
 except NameError:
    print("No variable named z!")

此代碼嘗試打印 z,如果沒有名為 z 的變量,它將在 except 下運行代碼。

暫無
暫無

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

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