คลาสในภาษาไพธอน

คลาสในภาษาไพธอน

บทความนี้อธิบายเกี่ยวกับคลาสในภาษาไพธอน

YouTube Video

คลาสในภาษาไพธอน

ในภาษาไพธอน คลาสเป็นแนวคิดสำคัญในเขียนโปรแกรมเชิงวัตถุ (OOP) ซึ่งกำหนดเทมเพลตสำหรับการจัดการข้อมูลและเมธอดที่ใช้ดำเนินการกับข้อมูลนั้น ด้วยการใช้คลาส คุณสามารถสร้างโครงสร้างข้อมูลและรวมพฤติกรรมที่เกี่ยวข้องกับข้อมูลนั้น

พื้นฐานของคลาส

เพื่อกำหนดคลาสในภาษาไพธอน ให้ใช้คำสำคัญ class ด้านล่างนี้คือตัวอย่างโครงสร้างและการใช้งานคลาสพื้นฐาน

 1# Class definition
 2class MyClass:
 3    # Constructor (initialization method)
 4    def __init__(self, attribute):
 5        self.attribute = attribute
 6
 7    # Method (member function)
 8    def display_attribute(self):
 9        print(self.attribute)
10
11# Creating an object
12obj = MyClass("Hello, World!")
13obj.display_attribute()  # Outputs "Hello, World!"

ส่วนประกอบของคลาส

แอตทริบิวต์

แอตทริบิวต์ของคลาสหมายถึงข้อมูลหรือสถานะที่ถูกเก็บไว้ในออบเจกต์ ในตัวอย่างข้างต้น attribute คือแอตทริบิวต์ของอินสแตนซ์

วิธีการ

เมธอดคือตัวฟังก์ชันที่กำหนดภายในคลาสเพื่อกำหนดการทำงานบนออบเจกต์ ตัวอย่างเช่น เมธอด display_attribute ที่แสดงในข้างต้น

ตัวสร้าง (Constructor)

เมธอด __init__ เรียกว่าตัวสร้าง (constructor) และจะถูกเรียกใช้งานเมื่อออบเจกต์ถูกสร้างขึ้น มันใช้กำหนดค่าเริ่มต้นให้กับอินสแตนซ์

การสร้างและจัดการออบเจกต์

การสร้างออบเจกต์จากคลาสเรียกว่าการสร้างอินสแตนซ์ (Instantiation) ในตัวอย่างข้างต้น MyClass ถูกสร้างอินสแตนซ์เพื่อสร้าง obj ด้วยออบเจกต์ที่สร้างขึ้น คุณสามารถเรียกเมธอดที่กำหนดไว้ในคลาสหรือเข้าถึงแอตทริบิวต์ได้

การสืบทอดคลาส

คลาสรองรับการสืบทอด ซึ่งช่วยให้แอตทริบิวต์และเมธอดสามารถสืบทอดจากคลาสอื่น (คลาสแม่หรือคลาสฐาน) คลาสใหม่ (ซับคลาส) สามารถขยายคลาสพาเรนต์เพื่อเพิ่มฟังก์ชันการทำงาน

 1# Parent class
 2class Animal:
 3    def speak(self):
 4        print("Some sound")
 5
 6# Child class
 7class Dog(Animal):
 8    def speak(self):
 9        print("Bark!")
10
11# Instantiation and method call
12dog = Dog()
13dog.speak()  # Outputs "Bark!"

ในลักษณะนี้ คลาสของ Python เป็นวิธีการที่ทรงพลังในการเชื่อมโยงข้อมูลและกระบวนการอย่างมีเหตุผล องค์ประกอบอื่นของการเขียนโปรแกรมเชิงวัตถุ เช่น polymorphism และ encapsulation ก็สามารถนำมาใช้ผ่านคลาสได้เช่นกัน

โมดูลใน Python

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

การสร้างโมดูล

การสร้างโมดูล คุณเพียงแค่บันทึกไฟล์ที่มีโค้ด Python ตัวอย่างเช่น การบันทึกไฟล์ที่มีเนื้อหาดังต่อไปนี้เป็น my_module.py จะทำให้มันกลายเป็นโมดูล

1def greet(name):
2    return f"Hello, {name}!"
3
4pi = 3.14159

การนำเข้าโมดูล

เพื่อใช้โมดูลที่สร้างในไฟล์อื่น คุณใช้คำสั่ง import

1import my_module
2
3# Using functions and variables from my_module
4print(my_module.greet("Alice"))
5print(my_module.pi)

คุณยังสามารถนำเข้าฟังก์ชันหรือตัวแปรเฉพาะได้

1from my_module import greet, pi
2
3# Names can be used directly.
4print(greet("Bob"))
5print(pi)

การตั้งชื่อเล่นให้โมดูล

คุณสามารถตั้งชื่อเล่นให้กับโมดูลเมื่อนำเข้า สิ่งนี้ช่วยให้เข้าถึงโมดูลได้ง่ายขึ้นขณะเขียนโค้ด

1import my_module as mm
2
3print(mm.greet("Charlie"))
4print(mm.pi)

โมดูลของไลบรารีมาตรฐาน

Python มีโมดูลไลบรารีมาตรฐานที่มีอยู่ในตัวให้ใช้งานหลากหลาย คุณสามารถนำเข้าและใช้งานโมดูล เช่น โมดูล math หรือโมดูล os ได้

1import math
2
3print(math.sqrt(16))
4print(math.pi)

แพ็คเกจ

แพ็คเกจคือการรวบรวมโมดูลหลายตัวที่จัดระเบียบในโครงสร้างไดเรกทอรี การใช้แพ็คเกจช่วยให้จัดระเบียบโค้ดได้ดียิ่งขึ้นและสนับสนุนการพัฒนาแอปพลิเคชันขนาดใหญ่

การใช้ประโยชน์จากโมดูลและแพ็คเกจใน Python ช่วยให้คุณเขียนโปรแกรมที่มีประสิทธิภาพและเป็นระเบียบได้มากขึ้น

คุณสามารถติดตามบทความข้างต้นโดยใช้ Visual Studio Code บนช่อง YouTube ของเรา กรุณาตรวจสอบช่อง YouTube ด้วย

YouTube Video