محب علوی
مدیر
اس دھاگے میں ڈکشنری ( dictionary) پر تبادلہ خیال ہوگا۔
ڈکشنری میں موجود قدریں دیکھنے کے لیئے کیا طریقہ استعمال کیا جا سکتا ہے؟ اس پر تلاش کا عمل بھی کر سکتے ہیں؟ کیوں کہ ظاہر ہے کہ تین یا چار قدروں کے لیئے تو کوئی بھی موذی میں لغت نہ بنائے گا۔
پس نوشت: مجھے آئٹمز والا فنکشن مل گیا ہے۔ مگر اسکو صعودی یا نزولی ترتیب دینے کا عمل ہو سکتا ہے؟
>>> d = {'a':1, 'b':2,'c':3,'d':4}
>>> 'a' in d
True
>>> 'g' in d
False
>>>
ڈکشنری میں موجود قدریں دیکھنے کے لیئے کیا طریقہ استعمال کیا جا سکتا ہے؟ اس پر تلاش کا عمل بھی کر سکتے ہیں؟ کیوں کہ ظاہر ہے کہ تین یا چار قدروں کے لیئے تو کوئی بھی موذی میں لغت نہ بنائے گا۔
پس نوشت: مجھے آئٹمز والا فنکشن مل گیا ہے۔ مگر اسکو صعودی یا نزولی ترتیب دینے کا عمل ہو سکتا ہے؟
>>> items = [('name', 'Gumby'), ('age', 42)]
>>> d = dict(items)
>>> [key for (key,value) in d.items() if value == 42]
['age']
میں فارم میں جیسے ہی آنے کی کوشش کرتا ہوں۔ مصروفیات پتہ نہیں کہاں کہاں سے ٹپک پڑتی ہیںویسے لسٹ کی طرح ڈکشنری کا کوئی اپنا ترتیبی (sorting) فنکشن نہیں ہے البتہ کچھ اور طریقوں سے اسے ترتیب میں لایا جا سکتا ہے۔
@نیرنگ بھئی اب تم بھرپور فارم میں آ جاؤ کہ اب ہم بنیادی سے ذرا اوپر والے موضوعات کی طرف جا رہے ہیں۔
تمہارے سوالات بہت اہم ہیں کیونکہ سوالات اب وہی کر سکے گا جو کچھ سمجھ رہا ہے۔
لسٹوں کی مدد سے ڈکشنری بنانا
ڈکشنری بنانے کا ایک طریقہ دو لسٹوں کی مدد سے بھی ہے۔
پہلے ہم نے دو لسٹ بنائی ہیں ایک مہینوں کے نام کی اور دوسری مہینوں کے دنوں کی تعداد کی۔
پھر ہم نے zip فنکشن استعمال کرتے ہوئے دونوں لسٹوں کو جوڑ کر ایک ڈکشنری بنائی۔
اس کے بعد ہم نے لسٹ پرنٹ کرا لی ہے۔
PHP:>>> monname = ['JAN','FEB','MAR','APR','MAY','JUN','JUL','AUG','SEP','OCT','NOV','DEC'] >>> monnum = [31,28,31,30,31,30,31,31,30,31,30,31] >>> month = dict(zip(monname,monnum)) >>> print(month) {'FEB': 28, 'DEC': 31, 'APR': 30, 'AUG': 31, 'JAN': 31, 'OCT': 31, 'JUN': 30, 'SEP': 30, 'JUL': 31, 'MAY': 31, 'MAR': 31, 'NOV': 30}
بھیا ایک بات کی سمجھ نہیں آ رہی۔
یہ آئٹمز کی ترتیب کیوں بدل رہی ہے پہلے جنوری اور اس کے دنوں کی تعداد کیوں نہیں ہے۔ اوپر لسٹ میں بھی تو ترتیب سے ہے۔
لسٹ اور ٹپل میں کیا فرق ہے؟
اور ٹپلز سمپل بریکٹ میں ہوتے ہیں۔ لسٹ square بریکٹس میں اور ڈکشنری کرلی بریکٹس میں۔۔ہے ناں بھیا؟ڈکشنری میں keys کی ترتیب اہم نہیں ہوتی اور ڈکشنری عموماً اُس ترتیب سے نظر نہیں آتی جس ترتیب سے ہم اس میں ڈیٹا شامل کرتے ہیں۔یاد رکھنے کی بات یہ ہے کہ ڈکشنری میں values ہمیشہ keys کی مدد سے تلاش کی جاتی ہیں اور key-value pair ہمیشہ ایک سا رہتا ہے۔ اس لئے ترتیب سے کوئی خاص فرق نہیں پڑتا۔
ٹپلز immutable ہوتے ہیں۔ یعنی ہم اسائنمنٹ آپریٹر کی مدد سے tuple کی قدر (value) تبدیل نہیں کر سکتے۔ جب کے لسٹ میں ایسا باآسانی ہوسکتاہے۔