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

ขอบเขตของตัวแปร ในไพทอน ตัวแปรอาจไม่สามารถเข้าถึงได้จากทุกๆ ส่วนในโปรแกรม ขึ้นอยู่กับการประกาศตัวแปรนั้นไว้ที่ไหน ซึ่งขอบเขตของตัวแปรนั้น และในไพทอนมีการระบุขอบเขตของตัวแปร อยู่สองแบบคือ
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 ภายในฟังก์ชั่น ว่าจะเอาตัวแปรภายนอกตัวไหนเข้ามาใช้งานภายใน  ***

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
YouTube.com/Fashion ช่อง YouTube ที่มีเฉพาะคอนเทนต์แฟชั่นและความสวยงามเท่านั้น
โดย jamepiyawat พ 11 ก.ย. 2019 5:46 pm บอร์ด Share Knowledge
0
59
พ 11 ก.ย. 2019 5:46 pm โดย jamepiyawat
การเลือกดึงข้อมูลในอาเรย์บางตัวมาใช้งาน ในรูปแบบ foreach
โดย Patipat พ 11 ก.ย. 2019 5:33 pm บอร์ด Joomla Developing Knowledge
0
78
พ 11 ก.ย. 2019 5:33 pm โดย Patipat
อยากให้แท็ก input กับแท็ก img อยู่ในบรรทัดเดียวกันครับ
โดย jamepiyawat พ 11 ก.ย. 2019 5:02 pm บอร์ด Joomla Development
2
87
พ 11 ก.ย. 2019 5:41 pm โดย jamepiyawat
ทำไมเรียกใช้ข้อมูลในอาเรย์แล้ว ไม่มีค่าเลยครับ
โดย Patipat พ 11 ก.ย. 2019 4:05 pm บอร์ด Joomla Development
3
88
พ 11 ก.ย. 2019 4:19 pm โดย tsukasaz
ความหมายของคำว่าเดบิตและเครดิต
โดย EyePornnipa พ 11 ก.ย. 2019 3:52 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
33
พ 11 ก.ย. 2019 3:52 pm โดย EyePornnipa
HOSxP คืออะไร
โดย EyePornnipa พ 11 ก.ย. 2019 12:20 pm บอร์ด Microsoft Office Knowledge & line & Etc
1
95
พ 11 ก.ย. 2019 1:50 pm โดย ppim
จะนำข้อมูลใน [name_en-GB] มาใช้งานอย่างไรครับ
โดย Patipat พ 11 ก.ย. 2019 11:47 am บอร์ด Joomla Development
0
71
พ 11 ก.ย. 2019 11:47 am โดย Patipat
อยากทราบวิธีการปรับค่าการแจ้งเตือน ในเว็บบอร์ด phpbb เมื่อมีการแจ้งเตือนเพิ่มเข้ามา
โดย Ittichai_chupol อ 10 ก.ย. 2019 5:14 pm บอร์ด Programming - PHP
1
81
อ 10 ก.ย. 2019 6:22 pm โดย mindphp
Tile ผู้ผลิตอุปกรณ์ Tracker สำหรับตามหาสิ่งของหายสามารถสั่งการได้ด้วย Google Assistant
โดย jamepiyawat อ 10 ก.ย. 2019 5:10 pm บอร์ด Share Knowledge
0
72
อ 10 ก.ย. 2019 5:10 pm โดย jamepiyawat
E-Bidding คืออะไร
โดย EyePornnipa อ 10 ก.ย. 2019 4:19 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
81
อ 10 ก.ย. 2019 4:19 pm โดย EyePornnipa
จากฟังก์ชันเรียกใช้รูปภาพ ใช้งานอย่างไรครับ
โดย Patipat อ 10 ก.ย. 2019 3:37 pm บอร์ด Joomla Development
2
74
อ 10 ก.ย. 2019 4:06 pm โดย Patipat
เรียกใช้ อาเรย์ forech อย่างไรครับ
โดย Patipat อ 10 ก.ย. 2019 11:53 am บอร์ด Joomla Development
4
115
อ 10 ก.ย. 2019 3:14 pm โดย Patipat
ฟีเจอร์ Ambient Mode ฟีเจอร์ใหม่ของ Google Assistant ที่จะเปลี่ยนมือถือ-แท็บเล็ตให้เป็นหน้าจออัจฉริยะ
โดย jamepiyawat จ 09 ก.ย. 2019 6:48 pm บอร์ด Share Knowledge
0
72
จ 09 ก.ย. 2019 6:48 pm โดย jamepiyawat
อยากทราบวิธีการ เคลียแคช bbocode
โดย Ittichai_chupol จ 09 ก.ย. 2019 5:54 pm บอร์ด Programming - PHP
4
118
จ 09 ก.ย. 2019 6:10 pm โดย Ittichai_chupol
อากทราบวิธีการเปิด Activate ผู้ใช้งาน ใน phpbb
โดย Ittichai_chupol จ 09 ก.ย. 2019 5:42 pm บอร์ด Programming - PHP
0
61
จ 09 ก.ย. 2019 5:42 pm โดย Ittichai_chupol
ต้องการปิดส่วนรายละเอียดของเนื้อหา บนเว็บไซต์ต้องทำยังไงค่ะ
โดย thatsawan จ 09 ก.ย. 2019 4:05 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
2
77
จ 09 ก.ย. 2019 4:13 pm โดย mindphp
insert ข้อมูลลงดาต้าเบสไม่ได้
โดย Anonymous อ 08 ก.ย. 2019 1:43 pm บอร์ด Programming - PHP
0
92
อ 08 ก.ย. 2019 1:43 pm โดย บุคคลทั่วไป
ทำความรู้จักกับ SDL Trados Studio
โดย MiyukiEamrucksa ส 07 ก.ย. 2019 5:47 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
89
ส 07 ก.ย. 2019 5:47 pm โดย MiyukiEamrucksa
อยากทราบวิธีเรียกใช้ค่าของ Array ครับ
โดย Patipat ส 07 ก.ย. 2019 5:25 pm บอร์ด Joomla Development
1
77
ส 07 ก.ย. 2019 5:33 pm โดย thatsawan
Q - ฟังก์ชันสร้าง แคชไม่ได้ครับ
โดย Patipat ส 07 ก.ย. 2019 4:09 pm บอร์ด Joomla Development
2
82
อ 10 ก.ย. 2019 11:44 am โดย Patipat