Junior
Ի՞նչ են Python-ի բառարանների հասկանալությունները (dict comprehensions):
sobes.tech AI
Պատասխան AI-ից
Տեքստային բառարանների (dict comprehension) — սա համառոտ սինտաքս է, որը հիմնված է կրկնվող օբյեկտի վրա։ Այն թույլ է տալիս ստեղծել « բանալի՝ արժեք » զույգեր՝ օգտագործելով արտահայտություններ և ընտրովի ֆիլտրեր։
Սինտաքսիս:
# հիմնական սինտաքսիս
dict = {բանալի_արտահայտություն: արժեք_արտահայտություն for տարր in iterable}
# պայմանով
dict = {բանալի_արտահայտություն: արժեք_արտահայտություն for տարր in iterable if պայման}
Օրինակներ:
Ստեղծել բառարան՝ 0-ից 4 թվերի քառակուսիներով:
# բառարան, որտեղ բանալին թիվն է, իսկ արժեքը՝ նրա քառակուսին
squares = {x: x**2 for x in range(5)}
# squares = {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}
Ստեղծել միայն զույգ թվերի համար բառարան:
# զույգ թվերի քառակուսիներով բառարան
even_squares = {x: x**2 for x in range(10) if x % 2 == 0}
# even_squares = {0: 0, 2: 4, 4: 16, 6: 36, 8: 64}
Բանալիների և արժեքների հակառակը:
original_dict = {'a': 1, 'b': 2, 'c': 3}
# հակառակ բանալիներ և արժեքներ ունեցող բառարան
inverted_dict = {value: key for key, value in original_dict.items()}
# inverted_dict = {1: 'a', 2: 'b', 3: 'c'}
Առավելություններ:
- Կարճ: Ավելի կարճ, քան հավասար
forցիկլերը։ - Կարդալելիություն: Սովորաբար ավելի պարզ կոդ է՝ պարզ փոխակերպումների համար։
- Արդյունավետություն: Որոշ դեպքերում կարող է ավելի արագ լինել, քան
forցիկլերը։
Թերություններ:
- Կարդալելիություն բարդ դեպքերում: Շատ բարդ տրամաբանության դեպքում կարող է դառնալ ավելի քիչ կարդացվող։
- Կողմնային ազդեցությունների բացակայություն: Չի նախատեսված այն գործողությունների համար, որոնք չեն կապված բառարանի ստեղծման հետ (օրինակ՝ տպագրություն):