НүүрPythonPython Class тухай

Python Class тухай

Python-ы класс бол объект хандалтат программчлалын үндсэн нэгж юм. Класс нь объектуудын төлөв (Attribute) ба үйлдлүүдийг (Action) тодорхойлдог. Классыг тодорхойлохдоо class түлхүүр үгийг ашиглана. Класс дотор хувьсагчид ба функцуудыг тодорхойлж болно.

Доорх жишээгээр Python-д хэрхэн класс тодорхойлохыг тайлбарлая.

Класс тодорхойлох

Алхам 1: Класс үүсгэх

class Dog:
    # Конструктор метод (объект үүсгэх үед дуудагдана)
    def __init__(self, name, age):
        self.name = name  # Объектын төлөв буюу Attribute
        self.age = age    # Объектын төлөв буюу Attribute

    # Объектын үйлдэл (Action) буюу метод
    def bark(self):
        return f"{self.name} is barking."

    def get_age(self):
        return f"{self.name} is {self.age} years old."

Алхам 2: Объект үүсгэх

my_dog = Dog("Buddy", 3)  # Dog классын жишээ буюу объект үүсгэх

# Объектын төлөвүүдэд хандах
print(my_dog.name)  # Output: Buddy
print(my_dog.age)   # Output: 3

# Объектын методыг дуудах
print(my_dog.bark())     # Output: Buddy is barking.
print(my_dog.get_age())  # Output: Buddy is 3 years old.

Тайлбар

  1. Класс тодорхойлох: class түлхүүр үгийг ашиглаж классыг тодорхойлно. Манай жишээнд Dog нэртэй класс байна.
  2. Конструктор метод: __init__ нь тусгай метод бөгөөд объект үүсгэх үед автоматаар дуудагдана. Энэ метод дотор self параметрээр дамжуулан объектын төлөвийг тодорхойлдог. self нь тухайн объектыг зааж байгаа бөгөөд үргэлж эхний параметр байх ёстой.
  3. Төлөв: self.name ба self.age нь Dog классын объектын төлөвүүд юм. Тэдгээрийг __init__ метод дотор оноож өгдөг.
  4. Метод: Класс дотор тодорхойлсон функцуудыг метод гэнэ. Манай жишээнд bark ба get_age гэсэн хоёр метод байна. Эдгээр нь тухайн объектыг өөрийн self параметрээр дамжуулан үйлдэл гүйцэтгэдэг.
  5. Объект үүсгэх: my_dog нэртэй Dog классын нэг жишээ буюу объект үүсгэсэн. Объект үүсгэх үед __init__ метод дуудагдан, name болон age төлөвүүдийг онооно.
  6. Төлөв ба методыг ашиглах: Объектын төлөвүүдэд хандахдаа my_dog.name, my_dog.age гэх мэтээр хандана. Объектын методыг дуудахдаа my_dog.bark(), my_dog.get_age() гэх мэтээр дуудаж болно.

Нэмэлт метод болон төлөв нэмэх

Dog класст нэмэлт төлөв болон методыг нэмэх боломжтой. get_breed гэсэн методыг нэмье.

class Dog:
    def __init__(self, name, age, breed):
        self.name = name
        self.age = age
        self.breed = breed  # Нэмэлт төлөв

    def bark(self):
        return f"{self.name} is barking."

    def get_age(self):
        return f"{self.name} is {self.age} years old."

    def get_breed(self):
        return f"{self.name} is a {self.breed}."

# Шинэ объект үүсгэх
my_dog = Dog("Buddy", 3, "Golden Retriever")

# Нэмэлт методыг дуудах
print(my_dog.get_breed())  # Output: Buddy is a Golden Retriever.

Класс болон методыг нэрлэх стандарт

Python-д класс болон методын нэрлэхдээ дагаж мөрдөх стандартууд байдаг. Эдгээр стандартууд нь кодыг илүү ойлгомжтой, засварлахад хялбар болгож өгдөг. Python-д эдгээр стандартуудыг PEP 8 (Python Enhancement Proposal 8) гэж нэрлэдэг.

1. Класс Нэрлэх Стандарт

  • КамелКейс (CamelCase) ашиглана.
  • Нэрийг том үсгээр эхлүүлнэ.
  • Үг хоорондын зайг том үсгээр тэмдэглэнэ.

Жишээ:

class MyClass:
    pass

class Dog:
    pass

class DataProcessor:
    pass

2. Метод болон Хувьсагч нэрлэх стандарт

  • СнейкКейс (snake_case) ашиглана.
  • Нэрийг жижиг үсгээр эхлүүлнэ.
  • Үг хоорондын зайг доогуур зураас (_) ашиглан тэмдэглэнэ.

Dog class:

class Dog:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def bark(self):
        return f"{self.name} is barking."

    def get_age(self):
        return f"{self.name} is {self.age} years old."

Car class:

class Car:
    def __init__(self, make, model, year):
        self.make = make
        self.model = model
        self.year = year

    def start_engine(self):
        return f"The {self.make} {self.model} engine is now running."

    def stop_engine(self):
        return f"The {self.make} {self.model} engine is now off."

    def get_car_info(self):
        return f"{self.year} {self.make} {self.model}"

Хуваалцах:

Холбоотой нийтлэлүүд

Virtual Environment гэж юу вэ? Virtual Environment (виртуал орчин) нь Python дээр хөгжүүлэгдэх төслийн тусгайлан тохируулагдсан орчин юм. Энэ нь...
  • Python
  • 7 сар 19, 2024
Python-ы Matplotlib болон Seaborn сангуудыг ашиглан Монгол улсын хүн амын тоон мэдээллийг графикаар хэрхэн дүрслэхийг энэхүү нийтлэлээр үзье. Хүн амын...
  • Python
  • 5 сар 25, 2024
Энэхүү нийтлэлээр Matplotlib ашиглан хэрхэн нэг хавтгайд хэд хэдэн график байгуулах аргыг үзье. Үр дүн:
  • Python
  • 5 сар 23, 2024
error: