Kortejlar bilan bajariladigan operatsiyalar
Ro‘yxatlarni o‘zgartirmaydigan barcha amallarni kortejlarga nisbatan ham qo‘llash mumkin (chun-ki kortejlar o‘zgarmaydigan ro‘yxatlardir). Bundan tashqari, elementlar o‘rinlarini turli metodlar yordamida almashtirish ham mumkin.
Masalan, Python tili dasturchilarining faxri bo‘lgan ikkita o‘zgaruvchining qiymatlarini o‘zaro al-mashtirish kabi:
51
17-bob: Lug‘atlar (dict) va ular bilan ishlash. Lug‘atlarning metodlari
Bu bobda biz lug‘atlar (dict) deb nomlangan yana bir obyektlar tipi haqida gaplashamiz. Bu yerda lug‘atlar bilan ishlash, ular ustida bajariladigan amallar, metodlari va lug‘atlar generatorlari borasi-da so‘z yuritamiz.
Pythonda lug‘atlar – kalit bo‘yicha murojaat qilish mumkin bo‘lgan ixtiyoriy obyektlarning tarti-blanmagan to‘plami. Ba’zan ularni assotsiativ massivlar yoki xesh-jadvallar deb ham atashadi.
Lug‘at bilan ishlash uchun, dastlab uni yaratib olishimiz kerak. Ularni bir necha metodda yaratish mumkin. Birinchi metodimiz – literallar yordamida yaratish:
{}
d = {'dict': 1, 'dictionary': 2}
{'dict': 1, 'dictionary': 2}
Ikkinchi metod esa dict() funksiyasidan foydalanish metodidir:
d = dict(short='dict', long='dictionary')
{'short': 'dict', 'long': 'dictionary'}
d = dict([(1, 1), (2, 4)])
{1: 1, 2: 4}
Uchinchi metod – fromkeys metodidan foydalanish:
d = dict.fromkeys(['a', 'b'])
{'a': None, 'b': None}
d = dict.fromkeys(['a', 'b'], 100)
{'a': 100, 'b': 100}
To‘rtinchi metod – ro‘yxatlar generatoriga juda o‘xshab ketadigan lug‘atlar generatorlaridan foyda-lanish:
d = {a: a ** 2 for a in range(7)}
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36}
52
Endi bu lug‘atlarimizga birorta yozuvni qo‘shishga hamda kalitlar bo‘yicha qiymatlarga murojaat qilishga harakat qilib ko‘ramiz:
2
{1: 2, 2: 4, 3: 9, 4: 16}
Traceback (most recent call last):
File "", line 1, in
d['1']
KeyError: '1'
Misoldan ko‘rinib turibdiki, yangi kalit bo‘yicha qiymat berish – lug‘atni kengaytiradi, mavjud kalit bo‘yicha qiymat berish – uni qaytadan yozib qo‘yadi, mavjud bo‘lmagan kalit bo‘yicha qiymatni olishga urinish esa xatolikni yuzaga keltiradi. Xatoliklar yuzaga kelishiga yo‘l qo‘ymaslik uchun maxsus metodlardan foydalanish yoki xatoliklarni qamrab olish lozim. Lug‘atlar bilan yana nima-lar qilish mumkin? Boshqa metodlar bilan bajarilishi mumkin bo‘lgan deyarli barcha amallarni: tarkibiy funksiyalar, kalit so‘zlar (masalan, for va while takrorlashlar kabi) hamda lug‘atlarning maxsus metodlaridan foydalanish mumkin.
Do'stlaringiz bilan baham: |