মডিউল পাঠ (2/4)
ডিক্ট এবং বোধগম্যতা সেট করুন
তালিকা বোঝার জন্য ব্যবহৃত একই সিনট্যাক্স তৈরিতেও কাজ করে ডিক্ট এবং সেট মান — আপনি শুধু বন্ধনী পরিবর্তন করুন।
ডিক্ট বোধগম্যতা
সিনট্যাক্স: {key: value for element in iterable}।
quadrati = {n: n * n for n in range(5)}
# {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}সাধারণ প্যাটার্ন: টিপলের একটি তালিকাকে ডিক্টে পরিণত করুন।
coppie = [("a", 1), ("b", 2), ("c", 3)]
d = {k: v for k, v in coppie}
# {'a': 1, 'b': 2, 'c': 3}
# (equivalente a dict(coppie) in questo caso)একটি ডিক্টের কী এবং মানগুলি অদলবদল করুন:
originale = {"a": 1, "b": 2, "c": 3}
invertito = {v: k for k, v in originale.items()}
# {1: 'a', 2: 'b', 3: 'c'}একটি ডিক্ট ফিল্টার করুন:
prezzi = {"mela": 1.2, "pera": 1.5, "kiwi": 2.5, "ananas": 4.0}
economici = {k: v for k, v in prezzi.items() if v < 2.0}
# {'mela': 1.2, 'pera': 1.5}বোধগম্যতা সেট করুন
সিনট্যাক্স: {expression for element in iterable}। একটি তালিকা হিসাবে একই
বোঝা, কিন্তু কোঁকড়া ধনুর্বন্ধনী সঙ্গে.
parole = ["ciao", "mondo", "ciao", "python"]
uniche = {p.upper() for p in parole}
# {'CIAO', 'MONDO', 'PYTHON'}নামের তালিকা থেকে অনন্য আদ্যক্ষর:
nomi = ["Ada", "Linus", "Grace", "Alan", "Guido"]
iniziali = {n[0] for n in nomi}
# {'A', 'L', 'G'}ফিল্টার + রূপান্তর
তালিকার বোধগম্যতার মতো, if ফিল্টারগুলি:
{n: n * n for n in range(10) if n % 2 == 0}
# {0: 0, 2: 4, 4: 16, 6: 36, 8: 64}কী এবং মান অদলবদল করার জন্য ডিক্ট বোধগম্যতা
একটি অভিধান উল্টানোর জন্য একটি খুব সাধারণ প্যাটার্ন (কী এবং মান অদলবদল করা, মানগুলি অনন্য বলে ধরে নেওয়া) হল:
orig_dict = {'a': 1, 'b': 2}
inv_dict = {value: key for key, value in orig_dict.items()}
# result: {1: 'a', 2: 'b'}চেষ্টা করে দেখুন
প্রদত্ত `শব্দ = ['মেলা', 'পেরা', 'কিউই', 'কলা']`, একটি শব্দ হিসাবে `দৈর্ঘ্য' তৈরি করুন {শব্দ: লেন(শব্দ)}। `দৈর্ঘ্য` মূল্যায়ন করুন।
ইঙ্গিত দেখান
{p: len(p) শব্দে p এর জন্য}
সমাধান 3 প্রচেষ্টার পরে উপলব্ধ
ব্যায়াম পর্যালোচনা করুন
প্রদত্ত `সংখ্যা = [1, 2, 2, 3, 4, 4, 5]`, বর্গক্ষেত্রের একটি সেট হিসাবে `অনন্য_বর্গ` তৈরি করুন। `অনন্য_স্কোয়ার` মূল্যায়ন করুন।
ইঙ্গিত দেখান
':' ছাড়া কোঁকড়া ধনুর্বন্ধনী = সেট বোঝা।
সমাধান 3 প্রচেষ্টার পরে উপলব্ধ
অতিরিক্ত চ্যালেঞ্জ
Given the list of strings `names = ["Alice", "Bob"]`, use a dict comprehension to create a dictionary that maps each name to its length. Store the dictionary in `name_lengths` and evaluate it.
ইঙ্গিত দেখান
সিনট্যাক্স হল {name: len(name) for name in name}।
সমাধান 3 প্রচেষ্টার পরে উপলব্ধ