Skip to content

การรับค่าตัวแปรและแสดงค่าตัวแปรใน Python 3

สวัสดีครับ บทความนี้จะพูดถึงเรื่อง การรับค่าตัวแปรและแสดงค่าใน Python 3 ครับ  ทำไมต้องมีตัวแปร  บทนิยมของตัวแปร คือ ลักษณะของข้อมูลที่เปลี่ยนแปลงได้ แสดงโดยใช้สัญลักษณ์ เช่น ตัวแปร X , Y ในเรื่องกราฟแกน X , Y ทางคณิตศาสตร์ เป็นต้น

ตัวแปรทำให้มีความง่ายต่อการเรียกใช้งานข้อมูล ถ้าจะเปรียบเทียบ ผมขอเปรียบเทียบแบบง่าย ๆ ครับ ตัวแปรก็เหมือนกับช่องว่างในกรอกข้อมูลในเอกสารต่าง ๆ ครับ

กฎการตั้งชื่อตัวแปรใน Python 3

  1. ห้ามตั้งชื่อตัวแปรให้ตรงกับคีย์เวิร์ดของ Python 3 โดยมีคีย์เวิร์ด ดังนี้  False class finally is return None continue for lambda try True def from nonlocal while and del global not with as elif if or yield assert else import pass break except in raise แต่สามารถใช้ตัวพิมพ์ใหญ่ได้ ห้ามใช้ตัวพิมพ์เล็ก
  2. ห้ามใช้อักษระสัญลักษณ์ เช่น / * - + # ! - % $ เป็นต้น
  3. ห้ามใช้ตัวเลข
  4. ไม่เว้นว่าง

รูปแบบการรับค่าตัวแปรใน Python 3

จะเป็นตัวเลขหรือข้อความก็ได้ครับ

>> ตัวแปร = input()

ตัวอย่างในรูปแแบบข้อความ เช่น

>>> name = input("What is your name? ")

แล้วรันจะได้ผลลัพท์ มีให้กรอกข้อความครับ

What is your name?

สมมุติให้ผมกรอกว่า tonatn

What is your name? tontan

ตัวอย่างในรูปแบบตัวเลข

>> a = int(input("input1: "))

การแสดงค่าหรือดึงค่าจากตัวแปรมาใช้งานใน Python 3

>> ตัวแปร

ตัวอย่างเช่น

>> name

ก็จะแสดงผลลัพท์ค่าตัวแปร

'tontan'

หรือ

print(name)

ก็แสดงค่าตัวแปรเช่นกันครับ

ตัวอย่างการเขียนโปรแกรมใน Python 3 โดยใช้ตัวแปรรวมด้วย

โปรแกรมบวกเลข

>>> a = int(input("input1: "))
input1: 1
>>> b = int(input("input1: "))
input1: 3
>>> print ("=" , a + b)
= 4

ประเภทตัวแปรในภาษา Python

ตัวแปรในภาษา Python มีอยู่ 3 ชนิด
1. ตัวแปรแบบ Global คือ ตัวแปรที่ประกาศไว้นอกเหนือจากฟังก์ชันใดฟังก์ชันหนึ่ง เป็นตัวแปรแบบสาธารณะ ทุกฟังก์ชันสามารถเรียกใช้งานตัวแปรนี้ได้

ในภาษา Python เราสามารถประกาศตัวแปรชนิดนี้ได้โดยใช้คำสั่ง

global  ตัวแปร

2. ตัวแปรแบบ Local คือ ตัวแปรที่ประกาศไว้ในฟังก์ชันใดฟังก์ชันหนึ่ง และฟังก์ชันที่มีตัวแปรนี้อยู่จะเป็นเจ้าของฟังก์ชันนั้น ฟังก์ชันอื่นไม่สามารถเรียกใช้งานตัวแปรนี้นอกเหนือจากฟังก์ชันที่ประกาศตัวแปรชนิดนี้

ในภาษา Python เราสามารถประกาศตัวแปรชนิดนี้ได้โดยใช้คำสั่ง

ตัวแปร = ค่าของตัวแปร

การทำงานของตัวแปรนี้

def a():
  global foo # ประกาศตัวแปร foo ให้เป็น ตัวแปรแบบ Global
  foo = 'A' # ใส่ค่าของตัวแปร

def b():
  global foo # ประกาศตัวแปร foo ให้เป็น ตัวแปรแบบ Global
  foo = 'B' # ใส่ค่าของตัวแปร

b()
a()
print(foo)

ผลลัพธ์

A

ที่ผลลัพธ์ออกมาเป็น A เพราะฟังก์ชัน a เป็นฟังก์ชันสุดท้ายที่ได้ทำการแก้ไขค่าของตัวแปร foo

3. ตัวแปรแบบ Non-local (Non-local variable) เป็นตัวแปรที่ไม่ได้กำหนดไว้ในขอบเขตของ local ในขณะที่เรียกชื่อสามารถอ้างอิงถึงตัวแปร Global (global variables) ได้

ตั้งแต่ Python 3.0 เป็นต้นมา ภาษาไพทอนได้รองรับตัวแปรแบบ Non-local (PEP 3104 -- Access to Names in Outer Scopes -  https://www.python.org/dev/peps/pep-3104/)

สามารถประกาศตัวแปรแบบ Non-local ได้โดยใช้คำสั่ง

nonlocal ชื่อตัวแปร

การทำงานของตัวแปรแบบ Non-local นี้

foo = '0'
def a():
	foo = 'A' # ใส่ค่าของตัวแปร
	def a2():
		nonlocal foo
		foo = 'AA'
		print("a2 :",foo)
	a2()
	print("a :",foo)

a()

ผลลัพธ์

a2 : AA
a : AA
global: 0

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *