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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
การ Discover ใน Joomla คืออะไร
โดย Patipat ศ 12 ก.ค. 2019 8:00 pm บอร์ด Joomla Developing Knowledge
0
35
ศ 12 ก.ค. 2019 8:00 pm โดย Patipat
google Hangouts ค่ืออะไร
โดย jamepiyawat ศ 12 ก.ค. 2019 6:08 pm บอร์ด Share Knowledge
0
32
ศ 12 ก.ค. 2019 6:08 pm โดย jamepiyawat
วิธีการทำ config ใน joomla module
โดย jamepiyawat ศ 12 ก.ค. 2019 5:23 pm บอร์ด Joomla Developing Knowledge
4
60
ส 13 ก.ค. 2019 3:12 pm โดย Patipat
วิธีการทำให้ joomla Extensions รองรับได้หลายภาษา
โดย jamepiyawat ศ 12 ก.ค. 2019 4:51 pm บอร์ด Joomla Developing Knowledge
1
36
ศ 12 ก.ค. 2019 5:59 pm โดย mindphp
การใช้งาน module passlib.hash ของภาษา python
โดย jirawoot ศ 12 ก.ค. 2019 3:58 pm บอร์ด Python Knowledge
0
22
ศ 12 ก.ค. 2019 3:58 pm โดย jirawoot
พีเอชในดิน (Soil pH Meter)
โดย Anonymous ศ 12 ก.ค. 2019 3:24 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
27
ศ 12 ก.ค. 2019 3:24 pm โดย บุคคลทั่วไป
รับสมัคร Programmer #C, ASP.net( Freelance 6 เดือน )
โดย ปัทมา แซ่เฮ้ง ศ 12 ก.ค. 2019 2:52 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
26
ศ 12 ก.ค. 2019 2:52 pm โดย ปัทมา แซ่เฮ้ง
วิธีการเพิ่มเงือนไข ของ Where เพื่อไม่ให้มีการแสดงโพสที่มีอยู่ในตารางที่กำหนด ใน Even search_get_posts_data
โดย Ittichai_chupol ศ 12 ก.ค. 2019 10:27 am บอร์ด PHP Knowledge
0
35
ศ 12 ก.ค. 2019 10:27 am โดย Ittichai_chupol
Q - สอบถามการ Export เอกสารใบสำคัญต่างๆจากระบบ
โดย EyePornnipa ศ 12 ก.ค. 2019 10:19 am บอร์ด M.D.Soft Co.,Ltd. - Tester
0
10
ศ 12 ก.ค. 2019 10:19 am โดย EyePornnipa
B - Draft Import ข้อมูล Survey [2019-07][005]
โดย tsukasaz ศ 12 ก.ค. 2019 9:20 am บอร์ด IIEC - Feedback Service System - Tester
1
1
ศ 12 ก.ค. 2019 12:18 pm โดย tsukasaz
งานประจำวันที่ 12 กรกฎาคม 2562
โดย jirawoot ศ 12 ก.ค. 2019 9:18 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
7
ศ 12 ก.ค. 2019 4:00 pm โดย jirawoot
งานประจำวันที่ 12 กรกฎาคม 2562
โดย EyePornnipa ศ 12 ก.ค. 2019 9:17 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
1
17
ศ 12 ก.ค. 2019 7:12 pm โดย EyePornnipa
งานประจำวันที่ 12 กรกฎาคม 2562
โดย jamepiyawat ศ 12 ก.ค. 2019 9:14 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
1
12
ศ 12 ก.ค. 2019 8:28 pm โดย jamepiyawat
มาอีกแล้ว อัพเดทล่าสุด Joomla เวอร์ชั่น 3.9.9 และ 3.9.10
โดย tsukasaz พฤ 11 ก.ค. 2019 8:21 pm บอร์ด MindPHP News
0
37
พฤ 11 ก.ค. 2019 8:21 pm โดย tsukasaz
วิธีย้ายคำบรรยายวิดีโอ Youtube
โดย jamepiyawat พฤ 11 ก.ค. 2019 6:47 pm บอร์ด Share Knowledge
0
34
พฤ 11 ก.ค. 2019 6:47 pm โดย jamepiyawat
ทำเรื่องง่ายให้เป็นเรื่องยากนั้นคือคนที่มีประสบการณ์ 555
โดย chatee supasand พฤ 11 ก.ค. 2019 5:56 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
40
พฤ 11 ก.ค. 2019 5:56 pm โดย chatee supasand
การใช้งาน flask session ใช้งานอย่างไร
โดย jirawoot พฤ 11 ก.ค. 2019 5:40 pm บอร์ด Programming - C/C++ & java & Python
0
33
พฤ 11 ก.ค. 2019 5:40 pm โดย jirawoot
Q - มีวิธีการ เรียกใช้ URL ผ่านตัวแปรโดยไม่ต้อง Fix ค่าไหมครับ
โดย Patipat พฤ 11 ก.ค. 2019 5:23 pm บอร์ด Programming - PHP
8
102
พฤ 11 ก.ค. 2019 6:55 pm โดย tsukasaz
สอบถาม วิธีใช้หรือแนะนำ การใช้ flask_login ร่วมกับ configparser
โดย jirawoot พฤ 11 ก.ค. 2019 4:42 pm บอร์ด Programming - C/C++ & java & Python
1
69
พฤ 11 ก.ค. 2019 6:05 pm โดย tatiya
สอบถามครับ บันทึกข้อมูลลงตาราง กับ เรียกข้อมูลจากตาราง เป็นภาษาไทยไม่ได้ครับ
โดย chatee supasand พฤ 11 ก.ค. 2019 4:11 pm บอร์ด Programming - C/C++ & java & Python
2
52
พฤ 11 ก.ค. 2019 5:21 pm โดย chatee supasand