在學習 Python 時,新手經常遇到「變數未定義」的錯誤。這篇文章針對一個經典案例進行分析:程式碼中使用了 HOST 變數,卻未曾定義或賦值,導致執行時拋出 NameError。
Python 是動態語言,變數必須在使用前先賦值。若直接引用不存在的變數,解譯器無法找到對應的記憶體位址,因而報錯。
HOST 之前,先給它一個明確的值,例如 HOST = '127.0.0.1' 或從設定檔讀取。host 與 HOST 是不同變數。HOST 應由環境變數提供,可用 os.getenv('HOST') 並給預設值。# 錯誤示範
print(HOST) # NameError: name 'HOST' is not defined
# 正確做法
HOST = '127.0.0.1'
print(HOST) # 輸出 127.0.0.1
養成「先定義、再使用」的習慣,能避免此類低級錯誤,讓程式碼更健壯。