ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

ขอบเขตของตัวแปร ในไพทอน ตัวแปรอาจไม่สามารถเข้าถึงได้จากทุกๆ ส่วนในโปรแกรม ขึ้นอยู่กับการประกาศตัวแปรนั้นไว้ที่ไหน ซึ่งขอบเขตของตัวแปรนั้น และในไพทอนมีการระบุขอบเขตของตัวแปร อยู่สองแบบคือ
1. ตัวแปลแบบ Global
2. ตัวแปลแบบ Local

ตัวแปล Global และ ตัวแปล Local
ตัวแปล ที่ถูกประกาศภายในฟังก์ชั่นจะถือเป็นตัวแปลร Local  และตัวแปรที่ประกาศนอกฟังก์ชั่นจะถือเป็นตัวแปน Global ตัวแปล Local จะสามารถใช้งานได้ภายในฟังก์ชั่นที่ประกาศมันไว้เท่านั้น  แต่ตัวแปล Global สามารถใช้งานที่ฟังก์ชั่นไหน ก็ได้
ตัวอย่าง def_global_local_var.py
# ตัวอย่าง สอน Python ในเว็บ  Mindphp.com


def f():
    print (s)
s = "ค่าของตัวแปร s"
f()


total = 5; # ตัวแปร global
def mindphp_sum( arg1, arg2 ):
   # print ("ค่าของตัวแปร total ภายในฟังก์ชั่น : ", total)  # <---- ไม่สามารถเอาตัวแปรภายนอกชื่อเดียวกันกับตัวแปลภายในเข้ามาใช้งานภายในได้
   total = arg1 + arg2; # Here total is local variable.
   print ("ค่าของตัวแปร total ภายในฟังก์ชั่น : ", total)
   return total;

# เรียกใช้ฟังก์ชั่น
total = 5; # ตัวแปร global
after_sum = mindphp_sum( 10, 20 );
print ("ค่าของตัวแปร total ภายในฟังก์ชั่น: ", total)
print(after_sum);


จากตัวอย่าง สร้างฟังก์ชั่น f แล้วเรียกใช้ โดยสร้างตัวแปร ภายนอกฟังก์ชั่นไว้ แล้วเรียกใช้ภายในฟังก์ชั่น จะได้ค่า
ค่าของตัวแปร s
แสดงออกมา
อีกฟังก์ชั่นคือ mindphp_sum แสดงให้เห็นว่าตัวแปรภายนอกกับภายในฟังก์ชั่นจะไม่เกี่ยวข้องกัน และ ไม่สามารถเอาตัวแปรภายนอกที่มีชื่อเดียวกับตัวแปรภายในเข้ามาใช้งานในฟังก์ชั่นได้
ค่าของตัวแปร total ภายในฟังก์ชั่น :  30
ค่าของตัวแปร total ภายในฟังก์ชั่น:  5
30

*** เรื่องขอบเขตของตัวแปรนี้ จะต่างกับ php เพราะ php ถ้า php จะเอาตัวแปรภายนอกเข้ามาใช้งานภายในฟังก์ชั่นได้ ต้องประกาศ global ภายในฟังก์ชั่น ว่าจะเอาตัวแปรภายนอกตัวไหนเข้ามาใช้งานภายใน  ***

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ช่วยแนะนำ UPS ให้หน่อยครับ ขอบคุณมากครับ /\
โดย อนุวัติ อะเวรา ศ 09 ส.ค. 2019 3:58 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
43
ศ 09 ส.ค. 2019 3:58 pm โดย อนุวัติ อะเวรา
วิธีการสร้างโมดูล library ในภาษา Python ให้สามารถติดตั้งได้ด้วย pip แบ่งปันโมดูลให้คนอื่นใช้
โดย jirawoot ศ 09 ส.ค. 2019 3:41 pm บอร์ด Programming - C/C++ & java & Python
0
94
ศ 09 ส.ค. 2019 3:41 pm โดย jirawoot
อยากทำปุ่มแบบไม่เห็นขอบใช้คำสั่ง css ยังไงครับ
โดย jamepiyawat ศ 09 ส.ค. 2019 3:41 pm บอร์ด HTML CSS
2
51
ศ 09 ส.ค. 2019 4:02 pm โดย jamepiyawat
Index - Update Thailand Hotel
โดย Patipat ศ 09 ส.ค. 2019 3:35 pm บอร์ด M088 - ปฏิภัทร สารธรรม
1
14
อ 13 ส.ค. 2019 4:17 pm โดย thatsawan
Nissan ได้พัฒนาหุ่นยนต์ กำจัดวัชพืช ออกจากนาข้าวในประเทศ ญี่ปุ่น
โดย chatee supasand ศ 09 ส.ค. 2019 2:19 pm บอร์ด MindPHP News
0
69
ศ 09 ส.ค. 2019 2:19 pm โดย chatee supasand
บริษัท NEC ญี่ปุ่น โชว์รถยนต์บินได้ ทดสอบบิน สูงกว่า 3 เมตร!!!
โดย chatee supasand ศ 09 ส.ค. 2019 2:15 pm บอร์ด MindPHP News
0
45
ศ 09 ส.ค. 2019 2:15 pm โดย chatee supasand
บริษัท NEC ญี่ปุ่น โชว์รถยนต์บินได้ ทดสอบบิน สูงกว่า 3 เมตร!!!
โดย chatee supasand ศ 09 ส.ค. 2019 12:27 pm บอร์ด MT33 - นายชาตรี สุภาแสน
2
9
ศ 09 ส.ค. 2019 2:13 pm โดย chatee supasand
อยากทราบวิธีการปัญหาUndefined offset: 101 Undefined offset: 102 ใน phpbb
โดย Ittichai_chupol ศ 09 ส.ค. 2019 11:59 am บอร์ด Programming - PHP
2
87
ศ 09 ส.ค. 2019 1:56 pm โดย Ittichai_chupol
สืบสานงานศิลป์ถิ่นภูมิปัญญา เครื่องเงินล้ำค่าตระการตาผ้าทอน่าน
โดย ยู. จีน ศ 09 ส.ค. 2019 11:55 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
58
ส 17 ส.ค. 2019 11:11 am โดย Tanadet
Samsung ร่วมจับมือกับ Microsoft ขยายความร่วมมือ ก่อนเปิดตัว Galaxy Note 10
โดย chatee supasand ศ 09 ส.ค. 2019 11:16 am บอร์ด Microsoft Office Knowledge & line & Etc
0
40
ศ 09 ส.ค. 2019 11:16 am โดย chatee supasand
อัพเดต odoojob
โดย jamepiyawat ศ 09 ส.ค. 2019 10:22 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
9
50
พฤ 22 ส.ค. 2019 7:04 pm โดย jamepiyawat
งานประจำวันที่ 9 สิงหาคม 2562
โดย chatee supasand ศ 09 ส.ค. 2019 9:39 am บอร์ด MT33 - นายชาตรี สุภาแสน
1
12
ศ 09 ส.ค. 2019 7:06 pm โดย chatee supasand
สามารถคัดแบบ บอจ.3 และ บอจ.4 ทางอินเตอร์เน็ตได้ไหมค่ะ
โดย EyePornnipa ศ 09 ส.ค. 2019 9:28 am บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
4
145
ส 17 ส.ค. 2019 11:00 am โดย Amp_Audit
งานประจำวันที่ 09 สิงหาคม 2562
โดย EyePornnipa ศ 09 ส.ค. 2019 9:19 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
2
32
ศ 09 ส.ค. 2019 7:17 pm โดย EyePornnipa
งานประจำวันที่ 9 สิงหาคม 2562
โดย jirawoot ศ 09 ส.ค. 2019 9:17 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
10
ศ 09 ส.ค. 2019 7:25 pm โดย jirawoot
งานประจำวันที่ 9 กรกฏาคม 2562
โดย jamepiyawat ศ 09 ส.ค. 2019 9:16 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
3
20
ศ 09 ส.ค. 2019 7:41 pm โดย jamepiyawat
งานประจำวันที่ 9 สิงหาคม 2562
โดย Patipat ศ 09 ส.ค. 2019 9:13 am บอร์ด M088 - ปฏิภัทร สารธรรม
1
15
ศ 09 ส.ค. 2019 7:25 pm โดย Patipat
งานประจำวันที่ 9 สิงหาคม 2562
โดย Auttasti ศ 09 ส.ค. 2019 9:09 am บอร์ด MT34 - นายอัฐสิทธิ์ รอดถนอม
1
9
ศ 09 ส.ค. 2019 6:19 pm โดย Auttasti
เมื่อพูดถึงโปรแกรมเมอร์ มีประสบการณ์และไม่มีประสบการณ์
โดย chatee supasand พฤ 08 ส.ค. 2019 7:27 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
87
พฤ 08 ส.ค. 2019 7:27 pm โดย chatee supasand
แอป Google Fit เพิ่ม Dark Theme และเก็บข้อมูลการนอน
โดย jamepiyawat พฤ 08 ส.ค. 2019 7:08 pm บอร์ด Share Knowledge
0
40
พฤ 08 ส.ค. 2019 7:08 pm โดย jamepiyawat