
เขียนโปรแกรมภาษา Python ตอนที่ 6 ตัวแปร
ตัวแปร คือคำหรือวลี หรือแม้แต่ตัวอักษรเพียงตัวเดียว ที่ใช้สำหรับเก็บค่าของข้อมูลเพื่อนำไปใช้งานในส่วนต่าง ๆ ของโปรแกรม
โดยส่วนใหญ่ ในภาษาโปรแกรมอื่น ๆ จะมีคำสั่งสำหรับประกาศตัวแปร เช่น var, let เป็นต้น แต่ในภาษา Python จะไม่มีคำสั่งสำหรับประกาศตัวแปร แต่ตัวแปรจะถูกสร้างขึ้นเมื่อมีการกำหนดค่าครั้งแรก เช่น
a = 5 b = 20 x = "DCRUB.COM" y = False
จากตัวอย่าง เมื่อเราพิมพ์คำหรือวลีใด ๆ ตามด้วยเครื่องหมาย = และกำหนดค่าให้กับคำหรือวลีนั้น ๆ นั่นคือการสร้างตัวแปรในภาษาไพธอน
การสร้างตัวแปร ไม่จำเป็นต้องกำหนดชนิดข้อมูล Data Type
ในไพธอน เมื่อเราสร้างตัวแปรใด ๆ ขึ้นมา เราไม่จำเป็นต้องกำหนดชนิดข้อมูลให้ตัวแปรนั้น ๆ เราสามารถกำหนดค่าให้กับตัวแปรนั้น ๆ ได้เลย และตัวแปรนั้นจะมีชนิดข้อมูลตามค่าที่เรากำหนด เช่น
a = 50 b = 'www.dcrub.com' c = True
จากโค้ดตัวอย่างด้านบน บรรทัดที่ 1 ตัวแปร a จะมีชนิดข้อมูลเป็น int โดยอัตโนมัติ เพราะเรากำหนดค่าตัวเลข (int) ให้กับมัน บรรทัดที่ 2 ตัวแปร b จะมีชนิดเป็น string โดยอัตโนมัติ เพราะเรากำหนดค่าที่เป็นอักขระ (string) ให้มัน
ตัวแปรใน Python สามารถเปลี่ยนชนิดข้อมูลได้ตามค่าที่กำหนด
ตัวแปรในภาษา Python สามารถเปลี่ยนชนิดข้อมูลได้ตามค่าที่กำหนดให้ เช่น ตัวแปรเดียวกัน เมื่อกำหนดค่าเป็นตัวเลข ตัวแปรนั้นก็จะมีชนิดข้อมูลเป็น int ต่อมา ถ้าเรากำหนดค่าที่เป็นสตริงให้กับตัวแปรตัวเดียวกันนั้น ตัวแปรนั้นก็จะมีชนิดข้อมูลเป็น string โดยอัตโนมัติ
x = 1000 print("Now type of x : ") print(type(x)) x = 'www.dcrub.com' print("Now type of x : ") print(type(x))
จากโค้ดตัวอย่าง บรรทัดที่ 1 กำหนดให้ตัวแปร x มีค่า 1000 ซึ่งเป็นข้อมูลชนิด int ตัวแปร x ก็จะมีชนิดข้อมูลเป็น int โดยอัตโนมัติ
หลังจากนั้น ในบรรทัดที่ 4 กำหนดค่าใหม่ให้ตัวแปร x โดยกำหนดเป็นข้อมูลชนิด string ตัวแปร x ก็จะมีชนิดข้อมูลเป็น string โดยอัตโนมัติ

ตัวแปรประเภทสตริง
เมื่อจะสร้างตัวแปรประเภทสตริง เราสามารถกำหนดค่าสตริงโดยใช้เครื่องหมาย single quote (”) หรือ double quotes (“”) ก็ได้
a = "www.dcrub.com" b = 'www.dcrub.com'
โค้ดด้านบน ทั้งตัวแปร a และตัวแปร b มีชนิดข้อมูลเป็นสตริงเหมือนกัน ถึงแม้ว่าจะใช้เครื่องหมายในการกำหนดค่าไม่เหมือนกันก็ตาม
การตั้งชื่อตัวแปรใน Python
การตั้งชื่อตัวแปรในภาษาไพธอน สามารถตั้งเป็นคำสั้น ๆ เช่น a, b, x, y หรือคำที่สื่อความหมายได้ เช่น age, name เป็นต้น โดยมีกฎเกณฑ์ที่ต้องทราบดังนี้
- ชื่อตัวแปรต้องเริ่มต้นด้วยตัวอักษรหรือเครื่องหมายอันเดอร์สกอร์ (_) อย่างใดอย่างหนึ่ง
- ชื่อตัวแปร ห้ามขึ้นต้นด้วยตัวเลขเด็ดขาด
- ชื่อตัวแปร สามารถประกอบด้วย ตัวอักษร เครื่องหมายอันเดอร์สกอร์ (_) และตัวเลข อยู่ด้วยกัน แต่ห้ามขึ้นต้นด้วยตัวเลข
- ชื่อตัวแปรในไพธอนเป็น case-sensitive คือ ตัวอักษรพิมพ์เล็กกับตัวอักษรพิมพ์ใหญ่ถือว่าเป็นคนละตัวกัน เช่น age กับ Age ถือว่าเป็นตัวแปรคนละตัวกัน
การกำหนดค่าให้กับตัวแปรหลายตัวพร้อมกัน
ในไพธอน เราสามารถกำหนดค่าให้ตัวแปรหลาย ๆ ตัวพร้อมกันได้ โดยการพิมพ์ตัวแปรแต่ละตัวในบรรทัดเดียวกันและคั่นแต่ละตัวแปรด้วยเครื่องหมายคอมม่า (,) ตามด้วยเครื่องหมาย = และกำหนดค่าลงไป โดยถ้ากำหนดค่าหลายค่าให้กับตัวแปรหลายตัวแปร ตัวแปรแต่ละตัวจะถูกกำหนดค่าตามลำดับ เช่น ตัวแปรที่ 1 จะถูกกำหนดค่าด้วยข้อมูลลำดับที่ 1 ไปเรื่อย ๆ ตามลำดับ ดังนี้
a, b, c = "www.", "dcrub", ".com" print(a) print(b) print(c)
ลำดับการกำหนดค่าดังโค้ดด้านบน จะเป็นดังนี้
หรือเราสามารถกำหนดค่าให้ตัวแปรหลายตัวแปรด้วยค่าเดียวกัน ดังโค้ดต่อไปนี้
a, b, c = "www.dcrub.com" print(a) print(b) print(c)
จากโค้ดด้านบน ตัวแปรทุกตัวจะมีค่าเดียวกันทั้งหมด
การแสดงค่าของตัวแปร
ในไพธอน จะใช้ฟังก์ชัน print ในการแสดงค่าของตัวแปร เช่น
a, b, c = "www.", "dcrub", ".com" print(a) print(b) print(c)
เราสามารถใช้เครื่องหมาย + สำหรับแสดงค่าของตัวแปรต่อกันในแถวเดียวกันได้ด้วย เช่น
a, b, c = "www.", "dcrub", ".com" print(a) print(b) print(c) print(a + b + c)
แต่ห้ามใช้เครื่องหมาย + ต่อข้อมูลที่เป็นชนิดตัวเลขกับข้อมูลชนิดอื่น เพราะจะทำให้เกิด Error ขึ้น
Global Variables ตัวแปรประเภทโกลบอล
ตัวแปรประเภท Global คือตัวแปรที่สร้างไว้นอกขอบเขตของฟังก์ชันหรือบล็อกคำสั่งใด ๆ เราสามารถใช้ตัวแปรประเภทนี้ที่ไหนก็ได้ในไฟล์เดียวกัน เช่น
x = "Global" def myFunction(): print("X is " + x) myFunction()
จากโค้ดตัวอย่าง เราประกาศตัวแปร x ไว้ภายนอกฟังก์ชัน myFunction() เราสามารถเรียกใช้ตัวแปร x ในฟังก์ชัน myFunction() หรือนอกฟังก์ชันดังกล่าวก็ได้

ถ้าเราประกาศตัวแปรชื่อเดียวกันทั้งนอกฟังก์ชันและในฟังก์ชัน ตัวแปรนอกฟังก์ชันจะเป็นตัวแปรแบบ Global มีค่าเหมือนเดิม ส่วนตัวแปรในฟังก์ชันจะเป็นตัวแปรแบบ Local ไม่เกี่ยวกันกับตัวแปรนอกฟังก์ชัน และเมื่อเรียกใช้งานตัวแปรนั้นในฟังก์ชัน จะเป็นการเรียกตัวแปรที่อยู่ในฟังก์ชัน ดังตัวอย่าง
x = "Global" def myFunction(): x = 'Local' print("x inside function is " + x) myFunction() print("x outside function is " + x)
จากตัวอย่าง ตัวแปร x ในบรรทัดที่ 1 เป็นตัวแปรแบบ Global ส่วนตัวแปร x ในบรรทัดที่ 4 ถูกประกาศไว้ในฟังก์ชัน myFunction() ถึงจะมีชื่อเดียวกันกับตัวแปรตัวแรกในบรรทัดที่ 1 แต่ถือว่าไม่เกี่ยวข้องกัน
บรรทัดที่ 5 เราเขียนคำสั่งให้แสดงค่าของตัวแปร x จะเป็นการเรียกใช้งานตัวแป x ที่อยู่ในฟังก์ชัน ที่มีค่าเป็น ‘Local’
ส่วนบรรทัดที่ 9 เราเขียนคำสั่งให้แสดงค่าของตัวแปร x อีกเช่นกัน ซึ่งตรงนี้จะเป็นการเรียกใช้ตัวแปร x ในบรรทัดที่ 1 ซึ่งเป็นตัวแปรแบบ Global
ผลลัพธ์จะเป็นดังภาพ

การใช้คีย์เวิร์ด global
โดยปกติ เมื่อเราประกาศตัวแปรไว้ภายในฟังก์ชัน ตัวแปรนั้นจะเป็นตัวแปรแบบ Local โดยอัตโนมัติ และสามารถเรียกใช้ได้เฉพาะภายในฟังก์ชันนั้นเท่านั้น
แต่ถ้าเราต้องการให้ตัวแปรที่ประกาศภายในฟังก์ชันเป็นตัวแปรแบบ Global คือให้สามารถเรียกใช้ภายนอกฟังก์ชันนั้นได้ เราสามารถทำได้โดยการวางคีย์เวิร์ด global ไว้ด้านหน้าตัวแปร แล้วค่อยกำหนดค่าทีหลัง หลังจากนั้นเราจะสามารถเรียกใช้ตัวแปรดังกล่าวภายนอกฟังก์ชันได้ ดังนี้
def myFunction(): global x x = "This is variable in function" myFunction() print(x)
จากโค้ดตัวอย่าง เราประกาศตัวแปร x ไว้ภายในฟังก์ชัน myFunction() โดยกำหนดคีย์เวิร์ด global กำกับไว้ด้านหน้าตัวแปรด้วย (บรรทัดที่ 2)
หลังจากนั้นในบรรทัดที่ 5 เรียกใช้งานฟังก์ชัน myFunction() เพื่อให้ฟังก์ชันทำงาน
บรรทัดที่ 7 เขียนคำสั่งให้แสดงค่าของตัวแปร x โดยเขียนไว้ภายนอกฟังก์ชัน myFunction() แต่เราสามารถเรียกใช้ตัวแปร x ได้ เพราะตัวแปร x เป็นตัวแปรประเภท Global

ถ้าหากมีตัวแปรที่เป็น Global และเราต้องการเปลี่ยนค่าของตัวแปรนั้นภายในฟังก์ชัน เราก็สามารถทำได้โดยใช้คีย์เวิร์ด global เช่นเดียวกัน ดังนี้
x = "This is variable outside function" print("Before assigning : " + x) def myFunction(): global x x = "This is variable inside function" myFunction() print("After assigning : " + x)
- บรรทัดที่ 1 ประกาศตัวแปร x เป็นแบบ Global
- บรรทัดที่ 2 สั่งให้แสดงค่าของตัวแปร x
- บรรทัดที่ 4 อ้างถึงตัวแปร x โดยระบุคีย์เวิร์ด global ไว้ด้านหน้าตัวแปร
- บรรทัดที่ 5 กำหนดค่าใหม่ให้กับตัวแปร x
- บรรทัดที่ 7 สั่งให้ฟังก์ชั่นทำงาน
- บรรทัดที่ 9 สั่งแสดงค่าของตัวแปร x ออกมาอีกครั้ง
เขียนโปรแกรมภาษา Python
- ตอนที่ 1 ทำความรู้จักกับภาษาไพธอน Python
- ตอนที่ 2 เตรียมเครื่องมือ
- ตอนที่ 3 Python Syntax
- ตอนที่ 4 การเขียนคอมเม้นต์
- ตอนที่ 5 การใช้ฟังก์ชัน print
- ตอนที่ 6 ตัวแปร
- ตอนที่ 7 การตั้งชื่อตัวแปร
- ตอนที่ 8 การกำหนดค่าให้ตัวแปรทีละหลายตัว
- ตอนที่ 9การแสดงค่าจากตัวแปร
- ตอนที่ 10 ตัวแปรประเภท Global
- ตอนที่ 11 ชนิดข้อมูล
- ตอนที่ 12 ข้อมูลชนิดตัวเลข
- ตอนที่ 13 การแปลงชนิดข้อมูล
- ตอนที่ 14 ข้อมูลชนิด String
- ตอนที่ 15 slice syntax
- ตอนที่ 16 การเปลี่ยนแปลงข้อมูล String
- ตอนที่ 17 การต่อข้อมูลชนิด String
- ตอนที่ 18 การจัดรูปแบบ String
- ตอนที่ 19 Escape Character
- เตอนที่ 20 เมธอด zfill()
- ตอนที่ 21 เมธอด upper()
- ตอนที่ 22 เมธอด title()
- ตอนที่ 23 เมธอด swapcase()
- ตอนที่ 24 เมธอด strip()
- ตอนที่ 25 เมธอด startswith()
- ตอนที่ 26 เมธอด splitlines()
- ตอนที่ 27 เมธอด split()
- ตอนที่ 28 เมธอด rstrip()
- ตอนที่ 29 เมธอด rsplit()
- ตอนที่ 30 เมธอด rpartition()
- ตอนที่ 31 เมธอด rjust()
- ตอนที่ 32 เมธอด rindex()
- ตอนที่ 33 เมธอด rfind()
- ตอนที่ 34 เมธอด replace()
- ตอนที่ 35 เมธอด partition()
- ตอนที่ 36 เมธอด lstrip()
- ตอนที่ 37 เมธอด lower()
- ตอนที่ 38 เมธอด ljust()
- ตอนที่ 39 เมธอด join()
- ตอนที่ 40 เมธอด isupper()
- ตอนที่ 41 เมธอด istitle()
- ตอนที่ 42 เมธอด isspace()
- ตอนที่ 43 เมธอด isprintable()
- ตอนที่ 44 เมธอด isnumeric()
- ตอนที่ 45 เมธอด islower()
- ตอนที่ 46 เมธอด isidentifier()
- ตอนที่ 47 เมธอด isdigit()
- ตอนที่ 48 เมธอด isdecimal()
- ตอนที่ 49 เมธอด isalpha()
- ตอนที่ 50 เมธอด isalnum()
- ตอนที่ 51 เมธอด index()
- ตอนที่ 52 เมธอด format()
- ตอนที่ 53 เมธอด find()
- ตอนที่ 54 เมธอด expandtabs()
- ตอนที่ 55 เมธอด endswith()
- ตอนที่ 56 เมธอด encode()
- ตอนที่ 57 เมธอด count()
- ตอนที่ 58 เมธอด center()
- ตอนที่ 59 เมธอด casefold()
- ตอนที่ 60 เมธอด capitalize()
- ตอนที่ 61 เมธอด format_map()
- ตอนที่ 62 เมธอด maketrans()
- ตอนที่ 63 เมธอด translate()
- ตอนที่ 64 ข้อมูลชนิด Boolean
- ตอนที่ 65 ตัวดำเนินการ
- ตอนที่ 66 ข้อมูลประเภท List
- ตอนที่ 67 การเข้าถึงสมาชิกใน List
- ตอนที่ 68 การเปลี่ยนแปลงข้อมูลใน List
- ตอนที่ 69 การเพิ่มข้อมูลใน List
- ตอนที่ 70 การลบข้อมูลใน List
- ตอนที่ 71 การเข้าถึงข้อมูลใน List ด้วย loop
- ตอนที่ 72 List Comprehension
- ตอนที่ 73 การเรียงข้อมูลใน List
- ตอนที่ 74 การคัดลอก List
- ตอนที่ 75 การรวม List เข้าด้วยกัน
- ตอนที่ 76 เมธอด append()
- ตอนที่ 77 เมธอด clear()
- ตอนที่ 78 เมธอด copy()
- ตอนที่ 79 เมธอด count()
- ตอนที่ 80 เมธอด extend()
- ตอนที่ 81 เมธอด index()
- ตอนที่ 82 เมธอด insert()
- ตอนที่ 83 เมธอด pop()
- ตอนที่ 84 เมธอด remove()
- ตอนที่ 85 เมธอด reverse()
- ตอนที่ 86 เมธอด sort()
- ตอนที่ 87 ข้อมูลชนิด Tuple
- ตอนที่ 88 การเข้าถึงข้อมูลใน Tuple
- ตอนที่ 89 การแก้ไขข้อมูลใน Tuple
- ตอนที่ 90 การแยกข้อมูลใน Tuple
- ตอนที่ 91 เข้าถึงข้อมูลใน Tuple ด้วยลูป
- ตอนที่ 92 การรวม Tuple เข้าด้วยกัน
- ตอนที่ 93 เมธอด count()
- ตอนที่ 94 เมธอด index()
- ตอนที่ 95 ข้อมูลประเภท Set
- ตอนที่ 96 การเข้าถึงข้อมูลใน Set
- ตอนที่ 97 การเพิ่มข้อมูลใน Set
- ตอนที่ 98 การลบข้อมูลใน Set
- ตอนที่ 99 การเข้าถึงข้อมูลใน Set ด้วยลูป for
- ตอนที่ 100 การจอย Join ข้อมูลใน Set
- ตอนที่ 101 เมธอด add()
- ตอนที่ 102 เมธอด clear()
- ตอนที่ 103 เมธอด copy()
- ตอนที่ 104 เมธอด difference()
- ตอนที่ 105 เมธอด difference_update()
- ตอนที่ 106 เมธอด discard()
- ตอนที่ 107 เมธอด intersection()
- ตอนที่ 108 เมธอด intersection_update()
- ตอนที่ 109 เมธอด isdisjoint()
- ตอนที่ 110 เมธอด issubset()
- ตอนที่ 111 เมธอด issuperset()
- ตอนที่ 112 เมธอด pop()
- ตอนที่ 113 เมธอด remove()
- ตอนที่ 114 เมธอด symmetric_difference()
- ตอนที่ 115 เมธอด symmetric_difference_update()
- ตอนที่ 116 เมธอด union()
- ตอนที่ 117 เมธอด update()
- ตอนที่ 118 ข้อมูลประเภท Dictionary
- ตอนที่ 119 การเข้าถึงข้อมูลใน Dictionary
- ตอนที่ 120 การเปลี่ยนแปลงข้อมูลใน Dictionary
- ตอนที่ 121 การเพิ่มข้อมูลใน Dictionary
- ตอนที่ 122 การลบข้อมูลใน Dictionary
- ตอนที่ 123 การวนลูปเข้าถึงสมาชิกใน Dictionary
- ตอนที่ 124 การคัดลอก Dictionary
- ตอนที่ 125 Dictionary ซ้อนกัน
- ตอนที่ 126 เมธอด clear()
- ตอนที่ 127 เมธอด copy()
- ตอนที่ 128 เมธอด fromkeys()
- ตอนที่ 129 เมธอด get()
- ตอนที่ 130 เมธอด items()
- ตอนที่ 131 เมธอด keys()
- ตอนที่ 132 เมธอด pop()
- ตอนที่ 133 เมธอด popitem()
- ตอนที่ 134 เมธอด setdefault()
- ตอนที่ 135 เมธอด update()
- ตอนที่ 136 เมธอด values()
- ตอนที่ 137 การตรวจสอบเงื่อนไขด้วย If statement
- ตอนที่ 138 การใช้ while loop