Python da kortejlardan foydalanishni o'rganish Kortejlar(tuple)



tải về 103.2 Kb.
trang1/3
Chuyển đổi dữ liệu08.04.2024
Kích103.2 Kb.
#57113
  1   2   3
Python da kortejlardan foydalanishni o


Python da kortejlardan foydalanishni o'rganish
Kortejlar(tuple)
Kortejlar bir nechta ob’yektlarni birgalikda saqlashga xizmat qiladi. Ularni ro’yxatlarga o’xshatish mumkin. Lekin ular ro’yxatlar kabi boy funksionallikka egaemas. Ularning asosiy jihati qatorlarga o’xshab o’zgarmasliklaridir. Kortejelementlar orasini vergul bilan ajratish orqali hosil qilinadi. Kortejga ma’no jihatdan o`zgarmas ro`yxat deb ta’rif berdik. Shu o`rinda savol tug`iladi. Ro`yxat bo`lsa kortej nimaga kerak:

  1. Turli holatlardan himoyalanish. Bu degani kortej o`zgartirishlardan himoyalangan bo`ladi, rejali (bu yomon) va tasodifiy (bu yaxshi) o`zgarishlardan xalos bo`ladi.

  2. Kichik hajm. So`zlar bilan ifodalamasdan.

  3. Kortejning funksiya va metodlari

Count(x)-kortejdagi x elementi sonini qaytaradi.
Index(x)-kortejdagi x elementining indeksini qaytaradi.
Any()-agar kortej elementi mavjud bo`lsa True qiymat qaytaradi, aks holda (kortej
bo`sh bo`lsa) False qiymat qaytaradi.
Max()-kortejning maksimal elementini qaytaradi.
Min()- kortejning minimal elementini qaytaradi.
Len()-kortejning uzunligini qaytaradi.
Sorted()-kortej elementlaridan iborat yangi tartiblangan ro`yxatni qaytaradi.
Sum()-kortej elementlari yig`indisini qaytaradi
Python-dagi kortejlar ro'yxatlarga o'xshaydi, lekin ular o'zgarmasdir, ya'ni kortejdagi elementlarni u yaratilgandan keyin o'zgartirib bo'lmaydi. Kortejlarning bu xususiyati ularni doimiy o'zgaruvchilar ro'yxati yoki ma'lum bir tartibga ega bo'lgan elementlar to'plami kabi o'zgartirilmasligi kerak bo'lgan ma'lumotlarni saqlash uchun foydali qiladi. Ushbu maqolada biz Python-da kortejlar bilan ishlash asoslarini, jumladan, ularni qanday yaratish, kirish va manipulyatsiya qilishni o'rganamiz.
Tuple yaratish:
Pythonda kortej yaratish uchun siz qavslardan foydalanasiz va elementlarni vergul bilan ajratasiz. Masalan, quyidagi kod uchta elementdan iborat kortejni yaratadi:
my_tuple = (1, 2, 3)
print(my_tuple)
# Output: (1, 2, 3)
Bundan tashqari, elementdan keyin vergul qo'yish orqali bitta elementli kortej yaratishingiz mumkin. Masalan:
my_tuple = (1,)
print(my_tuple)
# Output: (1,)
Tupledagi elementlarga kirish
Siz ro'yxatdagi kabi indekslash yordamida kortej ichidagi elementlarga kirishingiz mumkin. Masalan, quyidagi kod kortejning birinchi elementiga kiradi:
my_tuple = (1, 2, 3)
print(my_tuple[0])
# Output: 1
Tuple oxiridagi elementlarga kirish uchun salbiy indeksatsiyadan ham foydalanishingiz mumkin. Masalan:
my_tuple = (1, 2, 3)
print(my_tuple[-1])
# Output: 3
Tuplelarni manipulyatsiya qilish
Kortejlar o'zgarmas bo'lgani uchun siz kortej ichidagi elementlarni qo'sha olmaysiz, o'chira olmaysiz yoki o'zgartira olmaysiz. Biroq, mavjud kortejlarni birlashtirish yoki takrorlash orqali yangi kortejlar yaratishingiz mumkin.
Ikki kortejni birlashtirish uchun siz + operatoridan foydalanishingiz mumkin. Masalan:

tuple1 = (1, 2)


tuple2 = (3, 4)
new_tuple = tuple1 + tuple2
print(new_tuple)
# Output: (1, 2, 3, 4)
Kortejni ma'lum bir necha marta takrorlash uchun siz * operatoridan foydalanishingiz mumkin. Masalan:
my_tuple = (1, 2)
repeated_tuple = my_tuple * 3
print(repeated_tuple)
# Output: (1, 2, 1, 2, 1, 2)
Tuplelarni ochish
Kortej elementlarini alohida o'zgaruvchilarga tayinlash uchun kortejni ochishdan ham foydalanishingiz mumkin. Masalan:
my_tuple = (1, 2, 3)
x, y, z = my_tuple
print(x, y, z)
# Output: 1 2 3
Bu xususiyat ko'pincha bir nechta qiymatlarni kortej sifatida qaytaruvchi funktsiyalar bilan birgalikda ishlatiladi. Xulosa qilib aytganda, kortejlar Python-da foydali ma'lumotlar strukturasidir, ayniqsa siz o'zgartirilmasligi kerak bo'lgan ma'lumotlarni saqlashingiz kerak bo'lganda. Ular foydalanish nuqtai nazaridan ro'yxatlarga o'xshaydi, lekin ma'lumotlarning tasodifiy o'zgarishini oldini olishga yordam beradigan o'zgarmaslikning qo'shimcha afzalliklariga ega. Kortejlarni yaratish, ularga kirish va manipulyatsiya qilishni o'rganib, siz ulardan Python dasturlaringizda ma'lumotlarni samarali tartibga solish va saqlash uchun foydalanishingiz mumkin.
Bu erda Python-dagi Tuples haqida qisqacha ma'lumot. Nega? Chunki Tuplelar o'ziga xosdir. Ular o'zgarmasdir. Biroq, o'zgarmas bo'lish, ular ushlab turilgan qadriyatlarni o'zgartira olmasligini anglatadimi? "O'zgarmaslik" aslida nimani anglatadi? Keling, bilib olaylik.

Tuplar nima?


Tuplelar o'zgarmas Python ob'ektlari ketma-ketligiga ishora qiladi. Ular ob'ektlar o'zgarmasdan tashqari "ro'yxatlar"ga o'xshaydi. Kortejlar qavslardan, ro'yxatlar kvadrat qavslardan foydalanadi. Kortejlar heterojen ma'lumotlarni birgalikda saqlashi mumkin. Masalan: agar siz kirish uchun port bilan birga xost yoki domen nomining IP manzilini baham ko'rmoqchi bo'lsangiz
machine1=(“10.1.1.2”, ‘80’);
Batafsil ma'lumot "bu erda" , server_address parametri ostida.Bu holatda bo'lgani kabi, bir marta belgilangan qiymatlarni tahrirlashni xohlamasangiz, kortejlardan foydalanasiz. Agar siz o'zgartirilishi kerak bo'lgan turli xil elementlar ro'yxatini saqlamoqchi bo'lsangiz, ro'yxatni ishlatasiz.
O'zgarmas mulk
Yaxshi tushunish uchun men buni tekshirishingizni maslahat beraman: "Python 3-da ma'lumotlar modeli".Men quyida misol kod parchasini ham qo'shyapman (1-rasm), shuning uchun u sizga Python-da "o'zgarmas" bo'lish nimani anglatishini aniq tasvirlaydi.Python-da kortejlar o'zgarmas ob'ektlar bo'lganligi sababli, sizda kortej1+=(4,) operatsiya turi mavjud bo'lsa, bu yangi ob'ekt yaratilishini anglatadi. Bu birinchi to'plam1 misolining identifikatorlari va yangi elementlarning qo'shilishidan keyingi tuple1 identifikatorlaridagi farq bilan namoyon bo'ladi: quyida RED bilan belgilangan. Ro'yxat bilan, hatto yangi elementlar qo'shilgandan keyin ham, identifikator bir xil bo'lib qoladi - chunki ular Pythonda "o'zgaruvchan" ma'lumotlar tuzilmasi.

O'zgarmas kortejlar va o'zgaruvchan ob'ektlar
Ma'lumotlar modeli sahifasidan iqtibos:

o'zgaruvchan ob'ektga havolani o'z ichiga olgan o'zgarmas konteyner obyektining qiymati oxirgi qiymati o'zgartirilganda o'zgarishi mumkin; ammo konteyner hali ham o'zgarmas hisoblanadi, chunki undagi ob'ektlar to'plamini o'zgartirib bo'lmaydi. Demak, o'zgarmaslik o'zgarmas qiymatga ega bo'lish bilan mutlaqo bir xil emas, u yanada nozikroqdir.



Aslida, kortejlar "ro'yxat" ob'ektiga ega bo'lsa, kortejlar qiymati o'zgarishi mumkin bo'lgan o'zgaruvchan ob'ekt uchun o'zgarmas konteynerlardir. Bu shuni anglatadiki, Tuple tarkibidagi qiymatlar o'zgartirilmaydi, ro'yxat ob'ektidagi ma'lumotlar esa o'zgarishi mumkin.Mana bir misol:Qizil chiziq bilan belgilangan ro'yxat ishga tushirilgan va Tuple (konteyner) tuple_with_listidagi ob'ektlardan biri sifatida saqlanadi.Keyin ro'yxatga kiritilgan o'zgartirishlar sariq rang bilan belgilanadi, ikkita yangi qiymat qo'shiladi - 4 va 5. Shunday qilib, mohiyatan, oʻzgarmas obʼyekt qiymati hatto oʻzgarmas konteyner (Tuple) ichida boʻlsa ham yangilanishi mumkin.Bu, kutilganidek, kortej qiymatini yangilaydi. Va ko'k chiziq bilan ta'kidlanganidek, Tuple identifikatori ro'yxat ob'ektini yangilashdan oldin va keyin bir xil bo'lib qoladi.

Ob'ektning o'zgaruvchanligi uning turi bilan belgilanadi; masalan, raqamlar, satrlar va kortejlar o'zgarmas, lug'atlar va ro'yxatlar esa o'zgaruvchan.
Lug`at metodlari
Dict.clear()- lug`atni tozalaydi.
Dict.copy()-lug`at nusxasini qaytaradi.
Classmethod dict.fromkeys(seq[, value])- Seq dan kalitni va Value qiymatlariga
ega bo`lgan lug`atni yaratadi.
Dict.get(key[, default])-kalit qiymatini qaytaradi, lekin u bo`lmasa xatolik beradi,
default (jimlikda None) qaytaradi.
Dict.items()-juftliklarni qaytaradi(kalit, qiymat)
Dict.keys()- lug`atdagi kalitlarni qaytaradi
Dict.pop(key[default])-kalitni yo`qotib qiymatni qaytaradi. Agarda kalit bo`lmasa
defaultni qaytaradi.
Dict.popitem()- juftlikni o`chirib qaytaradi (kalit, qiymat). Agarda lug`at bo`sh
bo`lsa KeyError istisnoni chaqiradi. Esingizda tursin lug`atlar tartibli emas.
Dict.setdefault(key [, default])-kalit qiymatni qaytaradi, lekin u bo`lmasa xatolik
bermaydi, default qiymatga ega kalitni yaratadi (jimlikda None).
Dict.update([other])- other dan juftliklarni (kalit, qiymat) kiritib lug`atni to`ldiradi.
Mavjud bo`lgan kalitlar qaytadan yoziladilar. None (eski lug`at) qaytaradi.
Dict.values()-lug`atdagi qiymatni qaytaradi.

tải về 103.2 Kb.

Chia sẻ với bạn bè của bạn:
  1   2   3




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương