Python __init__() Method

பைத்தான் __init__() முறை

__init__() முறை

அனைத்து வகுப்புகளுக்கும் __init__() என்ற உள்ளமைக்கப்பட்ட முறை உள்ளது, இது வகுப்பு தொடங்கப்படும்போது எப்போதும் செயல்படுத்தப்படும்.

__init__() முறை பொருள் பண்புகளுக்கு மதிப்புகளை ஒதுக்க அல்லது பொருள் உருவாக்கப்படும்போது தேவையான செயல்பாடுகளைச் செய்யப் பயன்படுகிறது.

எடுத்துக்காட்டு

Person என்ற வகுப்பை உருவாக்கு, name மற்றும் age க்கு மதிப்புகளை ஒதுக்க __init__() முறையைப் பயன்படுத்து:

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

p1 = Person("Emil", 36)

print(p1.name)
print(p1.age)

📝 குறிப்பு:

__init__() முறை வகுப்பு புதிய பொருளை உருவாக்கப் பயன்படுத்தப்படும் ஒவ்வொரு முறையும் தானாகவே அழைக்கப்படுகிறது.

__init__() ஐ ஏன் பயன்படுத்த வேண்டும்?

__init__() முறை இல்லாமல், ஒவ்வொரு பொருளுக்கும் பண்புகளை நீங்கள் கைமுறையாக அமைக்க வேண்டும்:

எடுத்துக்காட்டு

__init__() இல்லாமல் வகுப்பை உருவாக்கு:

class Person:
  pass

p1 = Person()
p1.name = "Tobias"
p1.age = 25

print(p1.name)
print(p1.age)

__init__() ஐப் பயன்படுத்துவது ஆரம்ப மதிப்புகளுடன் பொருள்களை உருவாக்க எளிதாக்குகிறது:

எடுத்துக்காட்டு

__init__() உடன், பொருளை உருவாக்கும் போது ஆரம்ப மதிப்புகளை அமைக்கலாம்:

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

p1 = Person("Linus", 28)

print(p1.name)
print(p1.age)

⚠️ முக்கியமானது:

__init__() முறை அனைத்து வகுப்புகளுக்கும் பொதுவான தொடக்க முறையாகும். இது கட்டமைப்பாளர் (constructor) என்றும் அழைக்கப்படுகிறது.

__init__() இல் இயல்புநிலை மதிப்புகள்

__init__() முறையில் உள்ள அளவுருக்களுக்கு இயல்புநிலை மதிப்புகளை அமைக்கலாம்:

எடுத்துக்காட்டு

age அளவுருவிற்கு இயல்புநிலை மதிப்பை அமைக்கவும்:

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

p1 = Person("Emil")
p2 = Person("Tobias", 25)

print(p1.name, p1.age)
print(p2.name, p2.age)

💡 குறிப்பு:

இயல்புநிலை மதிப்புகள் விருப்ப அளவுருக்களை உருவாக்க உதவுகின்றன. அளவுரு வழங்கப்படாவிட்டால், இயல்புநிலை மதிப்பு பயன்படுத்தப்படும்.

பல அளவுருக்கள்

__init__() முறைக்கு உங்களுக்குத் தேவையான பல அளவுருக்கள் இருக்கலாம்:

எடுத்துக்காட்டு

பல அளவுருக்களுடன் Person வகுப்பை உருவாக்கவும்:

class Person:
  def __init__(self, name, age, city, country):
    self.name = name
    self.age = age
    self.city = city
    self.country = country

p1 = Person("Linus", 30, "Oslo", "Norway")

print(p1.name)
print(p1.age)
print(p1.city)
print(p1.country)

மேலும் எடுத்துக்காட்டுகள்

எடுத்துக்காட்டு

கார் வகுப்பு:

class Car:
  def __init__(self, brand, model, year):
    self.brand = brand
    self.model = model
    self.year = year
    self.speed = 0  # Default value

car1 = Car("Toyota", "Camry", 2022)
print(f"{car1.brand} {car1.model} ({car1.year})")

எடுத்துக்காட்டு

புத்தக வகுப்பு:

class Book:
  def __init__(self, title, author, pages):
    self.title = title
    self.author = author
    self.pages = pages
    self.is_borrowed = False  # Default boolean value

book1 = Book("Python Programming", "John Doe", 350)
print(f"Book: {book1.title} by {book1.author}")

முக்கிய புள்ளிகள்

கட்டமைப்பாளர்

__init__() என்பது பைத்தானில் கட்டமைப்பாளர் முறையாகும். பொருள் உருவாக்கப்படும்போது அது தானாகவே இயக்கப்படுகிறது.

self அளவுரு

__init__() முறை எப்போதும் முதல் அளவுருவாக self ஐக் கொண்டிருக்க வேண்டும், இது தற்போதைய பொருளைக் குறிக்கிறது.

சிறப்பு முறை

__init__() என்பது பைத்தானில் "dunder" (double underscore) முறை என அழைக்கப்படும் சிறப்பு முறையாகும்.

🔍 விளக்கம்:

__init__() முறை வகுப்பு நிகழ்வைத் தொடங்குகிறது. இது பொருள் உருவாக்கப்படும் போது அதன் ஆரம்ப நிலையை அமைக்கிறது. இது பொருளின் "ஜீவனைக் கொடுக்கும்" முறையாகும்.

பயிற்சி

பைத்தான் வகுப்புகளில் __init__() முறையின் நோக்கம் என்ன?

ஒரு பொருளை நீக்க
✗ தவறு! பொருளை நீக்க __del__() முறை பயன்படுத்தப்படுகிறது
பொருள் பண்புகளுக்கு ஆரம்ப மதிப்புகளை ஒதுக்க
✓ சரி! __init__() முறை பொருள் உருவாக்கப்படும் போது பொருள் பண்புகளுக்கு ஆரம்ப மதிப்புகளை ஒதுக்கப் பயன்படுகிறது
பொருள் தகவலை அச்சிட
✗ தவறு! பொருள் தகவலை அச்சிட __str__() அல்லது __repr__() முறைகள் பயன்படுத்தப்படுகின்றன