Mundarija[Yashirish][Show]
Ushbu ma'ruza Python tilidagi kortej deb ataladigan yana bir muhim tuzilma haqida.
Tuplar
Tuplelar ro'yxatlarga o'xshaydi, shuning uchun biz ularni elementlar ro'yxatini saqlash uchun ishlatishimiz mumkin. Lekin ro'yxatlardan farqli o'laroq, biz ularni o'zgartira olmaymiz, yangi elementlar qo'sha olmaymiz yoki mavjud narsalarni o'chira olmaymiz. Kortejlar o'zgarmas deb aytishimiz mumkin.
Men sizga ko'rsataman. Ro'yxatlar kvadrat qavslar o'rniga qavslar orqali aniqlanadi.
numbers = (4, 1, 7, 5, 0, 9)
Endi, agar biz kortejlar uchun usullar ro'yxatini chiqarsak, bizda qo'shish yoki qo'shish usullari yo'qligini ko'rishingiz mumkin, shuning uchun bu kortejga yangi elementlarni qo'shib bo'lmaydi. Bizda faqat ikkita usul bor: hisoblash va indeks.
Biz elementning takrorlanish sonini hisoblash uchun "hisoblash" dan foydalanamiz. "Indeks" elementning birinchi marta paydo bo'lish indeksini topish uchun ishlatiladi. Shunday qilib, biz faqat kortej haqida ma'lumot olishimiz mumkin va biz uni o'zgartira olmaymiz. Aytgancha, bu erda ko'rgan boshqa usullar ikkita pastki chiziq bilan boshlanadi.
Biz ularni sehrli usullar deb ataymiz. Ular ko'proq ilg'or mavzudir va biz kelgusi seriyalarimizda ularga to'xtalib o'tamiz.
O'zgarmas bo'lishdan tashqari, kortejlar ro'yxatning ko'pgina xususiyatlariga ega.
Amalda aytganda, siz ko'pincha ro'yxatlardan foydalanasiz, ammo kortejlar ham foydalidir. Agar siz elementlar ro'yxatini yaratmoqchi bo'lsangiz va dasturingizning hech bir joyida bu ro'yxatni tasodifan o'zgartirmaganingizga ishonch hosil qilmoqchi bo'lsangiz, unda kortejdan foydalangan ma'qul.
O'chirish
Ushbu bo'limda men sizga kuchli xususiyatni ko'rsatmoqchiman, bizda pythonda unpacking deb nomlangan.
Keling, “koordinata” qatorini aniqlaymiz
coordinate = (1, 2, 3)
Endi tasavvur qiling-a, bular “x”, “y” va “z” uchun koordinatalar. Endi aytaylik, biz ushbu qiymatlarni olishni va ularni dasturimizda bir nechta murakkab ifodalarda ishlatmoqchimiz. Ehtimol, biz ularni katta kompleks formulaning bir qismi sifatida qo'shmoqchimiz.
Shunday qilib, biz birgalikda quyidagi kodni yozishimiz kerak:
coordinate[0] * coordinate[1] * coordinate[2]
Ushbu kod qatori barcha koordinatalarni ko'paytiradi, lekin kodimizni shunday yozish samarasiz. Birinchidan, yaxshiroq yondashuvdan foydalanamiz va bu koordinatalarni alohida o'zgaruvchilarda saqlaymiz.
x = coordinate[0]
y = coordinate[1]
z = coordinate[2]
Bu yaxshiroq. To'g'rimi? Shunday qilib, hozircha yangi narsa yo'q. Keling, sizga ochish deb nomlangan kuchli xususiyatni ko'rsatishga ijozat bering va shu bilan biz kamroq kod bilan bir xil natijaga erishishimiz mumkin.
x, y, z, = coordinate
Endi bu bitta kod satri yuqorida yozilgan uchta kod qatoriga to'liq mos keladi. Bu qanday ishlashini sizga tushuntirib beraman.
Python tarjimoni ushbu bayonotni ko'rganda, u ushbu kortejdagi birinchi elementni oladi va uni o'zgaruvchiga tayinlaydi. Xuddi shunday, ikkinchi va uchinchi elementlar o'zgaruvchilarga tayinlanadi. Buni amalga oshirishda biz ushbu kortejni 3 ta o'zgaruvchiga ajratamiz. Keling, chiqishimizni tekshiramiz.
Paketni ochish ro'yxatlar bilan ham amalga oshirilishi mumkin.
Glossariylar
Biz Python tilidagi lug'atlar bilan tanishamiz. Biz kalit-qiymat juftligi sifatida kelgan ma'lumotlarni saqlamoqchi bo'lgan vaziyatlarda lug'atlardan foydalanamiz.
Mana bir misol. Ism, elektron pochta, telefon raqami, manzili va boshqalar kabi bir qancha atributlarga ega bo'lgan mijozni o'ylab ko'ring. Endi bu atributlarning har biri o'z qiymatiga ega. Masalan:
name = Jay
email = [email protected]
Ushbu misolda bizning kalitlarimiz ism, elektron pochta va telefondir. Har bir kalit qiymat bilan bog'langan, shuning uchun biz lug'atdan foydalanamiz. Lug'at yordamida biz kalit-qiymat juftliklarini saqlashimiz mumkin. Men sizga python tilida lug'atni qanday aniqlashni ko'rsataman.
customer = {
"name": "Jay",
"email": "[email protected]",
"age": 30,
"is_verified": True
}
Kalit satrlar, raqamlar, mantiqiy yoki boshqa narsalarga o'rnatilishi mumkin. Kalitlar noyob va faqat bir marta aniqlanishi mumkin, ya'ni "yosh" ni boshqa raqam bilan aniqlay olmayman. Ular katta-kichik harflarga ham sezgir.
Endi yozsam customer["name"],
u mijozning ismini chaqiradi. Keling, uni terminalda chop qilaylik:
Biz usullardan lug'atlar bilan ham foydalanishimiz mumkin. Yuqorida ko'rsatilgan funksiyani "get" usuli yordamida takrorlash mumkin.
Yuqoridagi ikkita usul o'rtasida alohida farq bor. Buni ko'rsatib beray.
Ko'rishingiz mumkinki, biz oddiygina mavjud bo'lmagan kalitni chop etganimizda, bu xatolikka olib keldi. Boshqa tomondan, mavjud bo'lmagan kalitni chaqirish usulidan foydalanish qiymat yo'qligini ko'rsatadigan "yo'q" natijasiga olib keladi. "Get" usulidan foydalanganda biz standart qiymatni ham taqdim etishimiz mumkin.
Misol uchun, agar bu lug'atda "tug'ilgan sana" kaliti bo'lmasa, biz uni quyidagicha ta'minlashimiz mumkin:
customer.get("birthdate", "Jan 01, 1994")
Shuningdek, biz lug'atdagi ro'yxatga o'xshash istalgan kalitni yangilashimiz mumkin. Aytaylik, biz lug'atimizdagi nom kalitini yangilamoqchimiz. Buni qanday qilamiz.
customer["name"] = "Shahbaz"
Xuddi shunday sintaksis lug'atimizga yangi kalit qo'shish uchun ham ishlatilishi mumkin. Keling, xuddi shunday tarzda "tug'ilgan kun" kalitini qo'shamiz.
customer["birthdate"] = "Jan 01, 1994"
Shunday qilib, bu Pythonda lug'atlardan foydalanish asoslari. Ular juda muhim va ular real dunyoda juda ko'p ilovalarga ega.
mashq
Siz raqamlarni quyidagi so'zlarga aylantiradigan dastur yozmoqchisiz:
qaror
Mana sizlar uchun yechim.
phone = input("Phone: ")
digits_mapping = {
"1": "One",
"2": "Two",
"3": "Three",
"4": "Four",
"5": "Five",
"6": "Six",
"7": "Seven",
"8": "Eight",
"9": "Nine",
"0": "Zero"
}
output = " "
for ch in phone:
output += digits_mapping.get(ch, "!") + " "
print(output)
Xuddi shunday, siz “emoji konvertori” kabi boshqa qiziqarli dasturlarni ham yaratishingiz mumkin Xursand bo'ling PYTHONERS!
Aylantirmoq!
Ushbu ma'ruza sizga yoqdi degan umiddaman. Keyinchalik, biz Python dasturlashning muhim jihati, funktsiyalari va parametrlariga to'xtalamiz.
Leave a Reply