คำสั่ง nonlocal ใน Python

ตัวอย่าง

สร้างฟังก์ชันภายในฟังก์ชัน ซึ่งฟังก์ชันนี้ใช้ตัวแปร x ในฐานะตัวแปรไม่ท้องถิ่น

def myfunc1():
  x = "Bill"
  def myfunc2():
    nonlocal x
    x = "hello"
  myfunc2() 
  return x
print(myfunc1())

ทดสอบตัวอย่าง

การคำนิยามและการใช้งาน

คำสั่ง nonlocal ใช้ในภายในฟังก์ชันที่ภายในฟังก์ชัน ซึ่งตัวแปรไม่ควรเป็นของฟังก์ชันภายใน

ใช้คำสั่ง nonlocal ประกาศตัวแปรไม่ใช่ตัวแปรท้องถิ่น

ตัวอย่างเพิ่มเติม

ตัวอย่าง

เหมือนตัวอย่างที่แล้ว แต่ไม่ใช้คำสั่ง nonlocal

def myfunc1():
  x = "Bill"
  def myfunc2():
    x = "hello"
  myfunc2() 
  return x
print(myfunc1())

ทดสอบตัวอย่าง

หน้าที่เกี่ยวข้อง

คำสั่ง global ใช้คำสั่ง global สร้างตัวแปรที่สากล