To’plamlar haqida ma’lumot. II. Asosiy qism
ChainMap-da lug'atlar tartibini qanday o'zgartirish mumkin
Download 136.13 Kb.
|
d.dasturlash
- Bu sahifa navigatsiya:
- Foydalanuvchilar roʻyxati
- UserLists dan qanday foydalanish kerak
ChainMap-da lug'atlar tartibini qanday o'zgartirish mumkinChainMap-da lug'atlarni saqlash tartibi funktsiya yordamida o'zgartirilishi mumkin .reversed() # We are reversing the order of dictionaries using reversed() function print('orginal chainmap', chain) chain.maps = reversed(chain.maps) print('reversed Chainmap', str(chain)) #> orginal chainmap ChainMap({'blue': 10, 'yellow': 12}, {'red': 1, 'white': 4}, {'red': 9, 'black': 8}) #> reversed Chainmap ChainMap({'red': 9, 'black': 8}, {'red': 1, 'white': 4}, {'blue': 10, 'yellow': 12}) Foydalanuvchilar roʻyxatiA UserListroʻyxatga oʻxshash konteyner maʼlumotlar turi boʻlib, s uchun oʻrash sinfidir list. Sintaksis:collections.UserList([list]) Oddiy roʻyxatni foydalanuvchi roʻyxatiga argument sifatida oʻtkazasiz. Ushbu ro'yxat ma'lumotlar atributida saqlanadi va unga usul orqali kirish mumkin. UserList.data # Creating a user list with argument my_list from collections import UserList my_list=[11,22,33,44] # Accessing it through `data` attribute user_list=UserList(my_list) print(user_list.data) #> [11, 22, 33, 44] UserLists dan qanday foydalanish kerakAytaylik, siz ba'zi bir ro'yxatlardagi barcha elementlarni mukofot sifatida ikki barobarga oshirmoqchisiz. Yoki hech qanday elementni berilgan roʻyxatdan oʻchirib boʻlmasligiga ishonch hosil qilishni xohlaysiz. Bunday hollarda biz ro'yxatlarimizga ma'lum "xulq-atvor"ni qo'shishimiz kerak, buni UserLists yordamida amalga oshirish mumkin. Misol uchun, sizga UserListo'rnatilgan usulning funksionalligini bekor qilish uchun qanday foydalanish mumkinligini ko'rsataman. Quyidagi kod ro'yxatga yangi qiymat qo'shishni (yoki qo'shishni) oldini oladi. # Creating a userlist where adding new elements is not allowed. class user_list(UserList): # function to raise error while insertion def append(self,s=None): raise RuntimeError("Authority denied for new insertion") my_list=user_list([11,22,33,44]) # trying to insert new element my_list.append(55) #> --------------------------------------------------------------------------- RuntimeError Traceback (most recent call last) <ipython-input-2-e8f22159f6e0> in <module> 4 5 my_list=user_list([11,22,33,44]) ----> 6 my_list.append(55) 7 print(my_list) <ipython-input-2-e8f22159f6e0> in append(self, s) 1 class user_list(UserList): 2 def append(self,s=None): ----> 3 raise RuntimeError("Authority denied for new insertion") 4 5 my_list=user_list([11,22,33,44]) RuntimeError: Authority denied for new insertion Yuqoridagi kod RunTimeErrorxabarni chop etadi va qo'shishga ruxsat bermaydi. Muayyan muddatdan keyin hech kim o'z ismini kirita olmasligiga ishonch hosil qilishni istasangiz, bu foydali bo'lishi mumkin. Shunday qilib, UserListreal vaqtni juda samarali o'tkazing. Download 136.13 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling