__getitem__ کا تعارف: ازگر میں ایک جادوئی طریقہ

__getitem__ کا تعارف: ازگر میں ایک جادوئی طریقہ

ماخذ نوڈ: 2011206

__getitem__ کا تعارف: ازگر میں ایک جادوئی طریقہ
مصنف کی طرف سے تصویر

ازگر ایک جادوئی زبان ہے جس میں بہت سے تصورات ہیں جن سے شاید جدید ترین صارف بھی واقف نہ ہوں۔ ڈنڈر یا جادوئی طریقے ان میں سے ایک ہے۔ جادو کے طریقے خاص طریقے ہیں جو ڈبل انڈر سکور سے گھرے ہوئے ہیں۔ انہیں python میں عام طریقوں کے برعکس واضح طور پر نہیں کہا جاتا ہے۔ ایسا ہی ایک جادوئی طریقہ ہے۔ __getitem__ طریقہ، Python اشیاء کو ترتیب یا کنٹینرز کی طرح برتاؤ کرنے کے قابل بناتا ہے جیسے فہرستیں، لغات، اور tuples. یہ انڈیکس یا ٹکڑا لیتا ہے اور مجموعہ سے اس کی متعلقہ قیمت کو بازیافت کرتا ہے۔ جب بھی ہم استعمال کرتے ہیں تو اسے خود بخود طلب کیا جاتا ہے۔ indexer [ ] آپریٹر آپ کے آبجیکٹ کے اندر موجود عناصر تک رسائی حاصل کرنے کے لیے۔

اس طریقہ کو جادو کی چھڑی سمجھیں جو آپ کو صرف چند سطروں کوڈ لکھ کر مطلوبہ معلومات نکالنے کی طاقت فراہم کرتی ہے۔ دلچسپ ہے نا؟ یہ طریقہ ڈیٹا کے تجزیہ اور مشین لرننگ میں بھی بڑے پیمانے پر استعمال ہوتا ہے۔ تو، آئیے گہرائی میں ڈوبتے ہیں۔ __getitem__ طریقہ اور اس کی طاقت اور لچک کو دریافت کریں۔

میں چاہتا ہوں کہ آپ یہ سمجھیں کہ ایک ازگر پروگرامر کے طور پر آپ کا فرض صرف فنکشنل کوڈ لکھنے سے زیادہ ہے۔ آپ کا کوڈ موثر، پڑھنے کے قابل اور برقرار رکھنے کے قابل ہونا چاہیے۔ استعمال کرنا __getitem__ آپ کو ان مقاصد کو حاصل کرنے میں مدد ملے گی. یہ جادوئی طریقہ استعمال کرنے کے کچھ اور فوائد ہیں:

  • میموری میں مکمل ڈیٹا ڈھانچہ لوڈ کرنے کے بجائے آپ کو صرف ضروری معلومات نکالنے کی اجازت دے کر میموری کے استعمال کو کم کرتا ہے۔
  • ڈیٹا کو ہینڈل اور ہیرا پھیری کے طریقہ کار میں زیادہ لچک فراہم کرتا ہے۔
  • آپ کو ڈیٹا کو لوپ کیے بغیر جمع کرنے پر اعادہ کرنے کی اجازت دیتا ہے۔
  • آپ کو اعلی درجے کی اشاریہ سازی لکھنے کی اجازت دے کر فعالیت کو بڑھاتا ہے جو بلٹ ان اقسام کے ساتھ ممکن نہیں ہو سکتا
  • کوڈ کو آسان بناتا ہے کیونکہ یہ مانوس اشارے کا استعمال کرتا ہے۔

کے لیے نحو __getitem__ طریقہ درج ذیل ہے:

def __getitem__(self, index): # Your Implementation pass

 

یہ فنکشن کے رویے کی وضاحت کرتا ہے اور انڈیکس لیتا ہے جس تک آپ اس کے پیرامیٹر میں رسائی حاصل کرنے کی کوشش کر رہے ہیں۔ ہم اس طریقہ کو اس طرح استعمال کر سکتے ہیں:

my_obj[index] 

 

یہ بیان کا ترجمہ کرتا ہے۔ my_obj.__getitem__(index) ٹوپی کے نیچے. اب آپ سوچ سکتے ہیں کہ یہ بلٹ ان سے کیسے مختلف ہے۔ indexer [] آپریٹر؟ جہاں بھی آپ یہ اشارے استعمال کرتے ہیں، ازگر خود بخود کال کرتا ہے۔ __getitem__ آپ کے لیے طریقہ اور عناصر تک رسائی کے لیے شارٹ ہینڈ ہے۔ لیکن اگر آپ اپنی مرضی کے مطابق اشیاء کے لیے اشاریہ سازی کے رویے کو تبدیل کرنا چاہتے ہیں، تو آپ کو واضح طور پر کال کرنے کی ضرورت ہے۔ __getitem__ طریقہ.

مثال # 01

آئیے پہلے ایک آسان مثال سے شروع کرتے ہیں۔ ہم ایک اسٹوڈنٹ کلاس بنائیں گے جس میں تمام طلباء کی فہرست ہوگی اور ہم انڈیکس کے ذریعہ ان تک رسائی حاصل کرسکتے ہیں اور اس بات پر غور کریں گے کہ انڈیکس ان کی منفرد اسٹوڈنٹ آئی ڈی کی نمائندگی کرتا ہے۔

class Student: def __init__(self, names): self.names=names def __getitem__(self,index): return self.names[index] section_A= Student(["David", "Elsa", "Qasim"])
print(section_A[2])

 

: پیداوار

 

اب ہم ایک جدید مثال کی طرف جائیں گے جہاں ہم استعمال کرتے ہوئے اشاریہ سازی کے رویے کو تبدیل کریں گے۔ __getitem__ طریقہ فرض کریں کہ میرے پاس سٹرنگ عناصر کی ایک فہرست ہے اور میں عنصر کو بازیافت کرنا چاہتا ہوں جب بھی میں اس کی انڈیکس پوزیشن میں داخل ہوں اور اگر میں خود سٹرنگ داخل کروں تو میں انڈیکس پوزیشن بھی حاصل کر سکتا ہوں۔

class MyList: def __init__(self, items): self.items = items def __getitem__(self, index): if isinstance(index, int): return self.items[index] elif isinstance(index, str): return self.items.index(index) else: raise TypeError("Invalid Argument Type") my_list = MyList(['red', 'blue', 'green', 'black']) # Indexing with integer keys
print(my_list[0]) print(my_list[2]) # Indexing with string keys
print(my_list['red']) print(my_list['green']) 

 

: پیداوار

red
green
0 2

یہ طریقہ مثال کے اوصاف کی فوری تلاش کے لیے انتہائی مفید ہے۔ اس طریقہ کار کی لچک اور استعداد پر غور کرتے ہوئے، میں کہوں گا کہ یہ Python کے سب سے کم استعمال شدہ جادوئی طریقوں میں سے ایک ہے۔ مجھے امید ہے کہ آپ کو یہ مضمون پڑھ کر لطف آیا ہو گا اور اگر آپ Python میں جادو کے دیگر طریقوں کے بارے میں جاننا چاہتے ہیں تو مجھے تبصرے کے سیکشن میں بتائیں۔
 
 
کنول مہرین ڈیٹا سائنس اور طب میں AI کی ایپلی کیشنز میں گہری دلچسپی رکھنے والا سافٹ ویئر ڈویلپر ہے۔ کنول کو اے پی اے سی ریجن کے لیے گوگل جنریشن اسکالر 2022 کے طور پر منتخب کیا گیا تھا۔ کنول کو رجحان ساز موضوعات پر مضامین لکھ کر تکنیکی معلومات کا اشتراک کرنا پسند ہے، اور وہ ٹیک انڈسٹری میں خواتین کی نمائندگی کو بہتر بنانے کے لیے پرجوش ہیں۔
 

ٹائم اسٹیمپ:

سے زیادہ KDnuggets