Skip to content

อ๊อบเจ็กและคลาสพื้นฐานในภาษา Python

สวัสดีผู้อ่านทุกท่านครับ บทความนี้จะพาผู้อ่านไปเรียนรู้เกี่ยวกับเรื่อง อ๊อบเจ็กและคลาสพื้นฐานในภาษา Python ครับ

ในภาษา Python การสร้างอ๊อบเจ็กและคลาส มีรูปแบบดังนี้ครับ

class <<ชื่อคลาส>>:
    def <<ชื่อฟังก์ชัน>> (self [, <<optional arguments>>]):
	<<โค้ดฟังก็ชั่น>>

ลองเขียนอ๊อบเจ็กและคลาสกันดู

class test:
	def run(self):
		print("It's ok")
	def opentest(self):
		print("Open A Test")

แล้วนำเรียกใช้ข้อมูลที่อยู่ในคลาส test

>>> a = test() #กำหนดให้ a แทนคำสั่งในคลาส test
>>> a.run() #เรียกใช้ฟังก์ชัน run ในคลาส test
It's ok
>>> a.opentest() #เรียกใช้ฟังก์ชัน opentest ในคลาส test
Open A Test

จะเห็นได้ว่า เราสามารถเรียกใช้ฟังก์ชั่นที่อยู่ในคลาสได้ ด้วยการอ้างอิงตำแหน่งที่อยู่ของฟังก์ชั่นในคลาสนั้น ต่อไปเราจะกำหนดให้ฟังก์ชั่นในคลาสสามารถกำหนดพารามิเตอร์ของฟังก์ชั่นได้ด้วยการใช้ self

class test2:
	def minus(self,num1,num2):
		self.num1 = num1
		self.num2 = num2
		print(num1-num2)

แล้วลองนำมาใช้งานดู

>>> b = test2() #กำหนดให้ b แทนคำสั่งในคลาส test2
>>> b.minus(10,5) #เรียกใช้ฟังก์ชัน minus ในคลาส test2 โดยกำหนดพารามิเตอร์ num1,num2
5

หากเราต้องการกำหนดค่าเริ่มต้นจะต้องใช้ constructor เข้ามาช่วย นั้นคือเมธอดชื่อ __init__ โดยทุกเมธอดในคลาสจะใช้พารามิเตอร์ตัวแรกแทนตัวมันเอง พูดง่าย ๆ ฟังก์ชั่นที่มีเมธอดชื่อ __init__ จะเป็นฟังก์ชั่นหลักของคลาสนั้น

class test3:
	def __init__(self,num1,num2):
		self.num1 = num1
		self.num2 = num2
		print(num1+num2)

เมื่อเรียกใช้คลาส test3

>>> c = test3(1,2)
3

นอกจากนั้นเรายังสามารถเพิ่มฟังก์ชั่นลงในคลาสที่มีการใช้เมธอดชื่อ __init__ ได้ด้วย

class test4:
	def __init__(self,num1,num2):
		self.num1 = num1
		self.num2 = num2
		print(num1+num2)
	def test(self):
		print("It's ok")

เรียกใช้งานในคลาส test4

>>> aa = test4(2,3)
5
>>> aa.test()
It's ok

เราสามารถกำหนดค่าว่างให้กับคลาสได้ด้วยคำสั่ง pass ตัวอย่างเช่น

class D():
    pass

เราสามารถใช้คลาส D โดยใช้เก็บค่าต่าง ๆ ได้เลย เหมือนเป็นกล่องเปล่า ตัวอย่างเช่น

>>> a = D()
>>> a.one = 1
>>> a.ten = 10
>>> print (a.ten - a.one)
9

คืนค่าข้อมูลด้วย return

คำสั่ง return เป็นคำสั่งสำหรับคืนคาข้อมูลที่อยู่ในคลาสและฟังก์ชัน

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

def ok():
 return "ok"

print(ok)
print(ok())

ผลลัพธ์

ok

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

Published on Categories oopTags

About wannaphong

วรรณพงษ์ ภัททิยไพบูลย์ ผู้ดูแลเว็บ wannaphong.com และผู้เขียนบทความบล็อกนี้ นักศึกษาชั้นปีที่ 1 สาขาวิทยาการคอมพิวเตอร์และสารสนเทศ คณะวิทยาศาสตร์ประยุกต์และวิศวกรรมศาสตร์ มหาวิทยาลัยขอนแก่น วิทยาเขตหนองคาย

ใส่ความเห็น

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