การใช้งาน ตัวแปร golbal บน ภาษา Python

แชร์ความรู้ภาษา Python ไพทอน การเขียนโปรแกรมภาษาไพทอน

Moderator: mindphp, ผู้ดูแลกระดาน

tatiya
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 512
ลงทะเบียนเมื่อ: 09/07/2018 9:35 am

การใช้งาน ตัวแปร golbal บน ภาษา Python

โพสต์โดย tatiya » 14/08/2018 3:00 pm

ตัวแปร Global คือ เป็นตัวแปรที่ประกาศไว้ในโปรแกรมหลัก มีขอบเขต กว้าง สามารถใช้งานได้ทุกส่วนของโปรแกรม
เรามาดูการใช้งานกัน เริ่มแรกผมจะตั้งตัวแปร ธรรมดาขึ้นมา แล้วสั่งปริ้น ธรรมดานะครับ

โค้ด: เลือกทั้งหมด

m = "M.D.Soft"
print(m)


ผลลัพท์ คือ
M.D.Soft

ต่อไปผมจะสร้างฟังก์ชั่นขึ้นมา แล้วเรียกใช้ตัวแปร global m ที่เราสร้างขึ้นนะครับ

โค้ด: เลือกทั้งหมด

m = "M.D.Soft"
def fn():
    print(m)
fn()  #เรียกใช้งาน fn


ผลลัพท์ คือ
M.D.Soft

ี่จะเห็นได้ว่าเราสามารถเรียกใช้ตัวแปร m ได้ ต่อไปผมจะสร้างฟังก์ชั่นแล้วสร้างตัวแปรที่ชื่อเดืยวกันมาดูกันว่าโปรแกรมจะเป็นยังไงครับ

โค้ด: เลือกทั้งหมด

m = "M.D.Soft"
def fn2():
    m = "mindphp"
    print(m)
fn2()   #เรียกใช้งาน fn2
print(m)

ผลลัพท์ คือ
mindphp
M.D.Soft

ถึงตอนนี้เราคงทราบแล้วว่า ตัวแปร m (ตัวแปร m ที่อยู่ข้างในฟังก์ชั่น จะเป็นตัวแปรแบบ local variable คือ เป็นตัวแปรที่ประกาศในฟังก์ชั่น มีขอบเขตแคบใช้งานได้เฉพาะภายในฟังก์ชั่นนั้นๆ) ที่อยู่ในฟังก์ชั่น จะเป็นตัวแปรคนละตัว กับ ตัวแปร global m ที่อยู่ข้างนอก

ต่อไปผมจะลองใช้ตัวแปร global ในฟังก์ชั่น และลองเปลี่ยนดูนะครับ code จะคล้ายๆ fc2 แต่ จะเพิ่ม คำว่า global ขึ้นมา

โค้ด: เลือกทั้งหมด

m = "M.D.Soft"
def fn3():
    global m
    m = "minphp"
    print("ค่าตัวแปรถายในฟังก์ชั่น :",m)
fn3()
print("ค่าค่าตัวแปรภายนอกฟังก์ชั่น :",m)

ผลลัพท์ คือ
ค่าตัวแปรถายในฟังก์ชั่น : minphp
ค่าค่าตัวแปรภายนอกฟังก์ชั่น : minphp

จะเห็นได้ว่า ถ้าเราใช้คำสั่ง global ภายในฟังก์ชั่น แล้วตัวแปร m ที่เราสร้างมาใหม่ในฟังชั่น จะเป็นตัวเดียวกับตัวที่อยู่ข้างนอก และถ้าเราเพิ่มค่าไปในตัวแปร m ที่สร้างขึ้นให้ฟงัก์ชั่น ตัวแปร m ที่อยู่ข้างนอกก็จะเปลี่ยนค่าไปด้วย

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 5 และ บุคคลทั่วไป 0 ท่าน