🔆دستور Fromkeys()
مقدمه
در پایتون، متد ()fromkeys یک متد متعلق به کلاس dict است که برای ایجاد یک دیکشنری جدید با استفاده از یک سری کلیدها (keys) و یک مقدار پیشفرض (اگر تعیین شود) استفاده میشود. این متد به شما این امکان را میدهد که به سرعت دیکشنریای بسازید که شامل یک یا چند کلید باشد و همهی آنها به یک مقدار مشخص ارجاع دهند.
🔆نحوه استفاده از fromkeys
dict .fromkeys(iterable, value=None)
iterable:
یک لیست، مجموعه، یا هر شئ قابل تکرار که شامل کلیدهایی است که میخواهید در دیکشنری جدید قرار دهید.
value:
مقدار پیشفرضی که برای همهی کلیدها به کار میرود (اختیاری). اگر مقدار مشخص نشود، None به عنوان مقدار پیشفرض استفاده میشود.
🔆مثالهای عملی
🔅مثال 1: استفاده از fromkeys برای ایجاد دیکشنری
# کلیدها
keys = ['a', 'b', 'c']
# ایجاد دیکشنری با مقدار پیشفرض 0
new_dict = dict .fromkeys(keys, 0)
print(new_dict)
خروجی:
{'a': 0, 'b': 0, 'c': 0}
🔅مثال 2: بدون مقدار پیشفرض
# کلیدها
keys = ['x', 'y', 'z']
# ایجاد دیکشنری با مقدار پیشفرض None
new_dict = dict .fromkeys(keys)
print(new_dict)
خروجی:
{'x': None, 'y': None, 'z': None}
🔗نکته مهم
در استفاده از fromkeys، اگر از یک لیست به عنوان کلیدها استفاده کنید، تمام کلیدها به یک شیء واحد اشاره میکنند.
🔅مثال 3: استفاده از یک لیست به عنوان مقدار پیشفرض
# کلیدها
keys = ['a', 'b', 'c']
# ایجاد دیکشنری با یک لیست به عنوان مقدار پیشفرض
new_dict = dict .fromkeys(keys, [])
print(new_dict)
# اضافه کردن یک عنصر به مقدار پیش فرض
new_dict['a'].append(1)
print(new_dict)
# توجه کنید که برای همه کلیدها این تغییر اعمال میشود
خروجی:
{'a': [1], 'b': [1], 'c': [1]}
در این مثال اگر شما به مقدار پیشفرض یک لیست یا هر شیء قابل تغییر دیگری ارجاع دهید، تغییرات برای همهی کلیدها اعمال میشود. اگر میخواهید که مقادیر مستقل از هم داشته باشید، باید از یک شیء جدید برای هر کلید استفاده کنید.
#بدانیم | #تست_تایم | آموزش پایتون
آموزش پایتون
👩💻خروجی قطعه کد بالا کدام است؟ #تست_تایم | آموزش پایتون
پاسخ صحیح: گزینهD
🔸تشریح تست بالا
دستور pop برای حذف مقادیر از یک لیست یا یک دیکشنری استفاده میشود.
result = myDict. pop(1 , 2)
مقدار کلید1 (عدد 10) حذف شده و همچنین در متغیری به نام result ریخته میشود.
print (result)
و در آخر مقدار کلید 1 یعنی عدد 10 چاپ میشود.
🧐میپرسید پس 2 این وسط چه کاره هست؟
👇ادامه پست رو بخون و از دستش نده!
🔆دستور pop
متد pop برای حذف مقداری از یک لیست یا دیکشنری استفاده میشود.
🔅استفاده از pop در لیست
list .pop(index)
index
یک عدد صحیح که نشاندهنده موقعیت عنصری است که میخواهید حذف کنید. اگر این پارامتر تعیین نشود، عنصر آخر لیست حذف میشود.
🔅عملکرد pop در لیست
1- اگر index مشخص شود، عنصر در آن موقعیت حذف و برگردانده میشود(شروع index از 0 میباشد).
2- اگر index مشخص نشود، آخرین عنصر لیست حذف و برگردانده میشود.
مثال:
my_list = [1, 2, 3, 4, 5]
# حذف آخرین عنصر
last_element = my_list.pop()
print(last_element)
# خروجی: 5
print(my_list)
# خروجی: [1, 2, 3, 4]
# حذف عنصر در موقعیت 1
second_element = my_list.pop(1)
print(second_element)
# خروجی: 2
print(my_list)
# خروجی: [1, 3, 4]
🔅استفاده از pop در دیکشنری
dict .pop(key,default)
key
کلیدی که میخواهید مقدار آن را حذف کنید.
default
مقدار پیشفرض (اختیاری) که در صورتی که کلید وجود نداشته باشد، برگردانده میشود.
🔅عملکرد pop در دیکشنری
1- اگر کلید (key) وجود داشته باشد، مقدار آن از دیکشنری حذف و برگردانده میشود.
2- اگر کلید وجود نداشته باشد و مقدار پیشفرض (default) مشخص نشده باشد، یک خطا (TypeError) به وجود میآید. اما اگر مقدار پیشفرض مشخص شده باشد، مقدار پیشفرض برگردانده میشود.
مثال:
my_dict = {1: 'a', 2: 'b', 3: 'c'}
# حذف و برگرداندن مقدار مربوط به کلید 2
value = my_dict.pop(2)
print(value)
# خروجی: 'b'
print(my_dict)
# خروجی: {1: 'a', 3: 'c'}
# سعی در حذف یک کلید غیرموجود با مقدار پیشفرض
default_value = my_dict .pop(4, 'default_value')
print(default_value)
# خروجی: 'default_value'
⭕️نکات مهم
°°در لیست شماره ایندکس داده میشود ولی در دیکشنری کلید داده میشود.
°° با دستور pop تنها یک مقدار را میتوان حذف کرد.
#بدانیم | #تست_تایم | آموزش پایتون
آموزش پایتون
🧑💻خروجی قطعه کد بالا کدام است؟ #تست_تایم | آموزش پایتون
پاسخ صحیح: گزینهA
🔵دستور deque
حذف و اضافه کردن عناصر از انتها و ابتدای لیست
💠ایجاد یک deque
برای ایجاد یک deque میتوانید از کد زیر استفاده کنید:
my_deque = deque()
همچنین میتوانید آن را با مقدار اولیه پر کنید:
my_deque = deque([1, 2, 3, 4, 5])
💠عملیات اصلی
در ادامه، برخی از عملیات اصلی که میتوانید بر روی deque انجام دهید در یک مثال آورده شده است.
خروجی هر قسمت به صورت کامنت در کد قرار داده شده است.
مثال
from collections import deque # creating an empty deque my_deque = deque() # output: deque([]) # appending on the right end of the list my_deque.append(1) my_deque.append(2) my_deque.append(3) # output: deque([1, 2, 3]) # appending on the left end of the list my_deque.appendleft(0) my_deque.appendleft(-1) # output: deque([-1, 0, 1, 2, 3]) # removing on the right end of the list removed_back = my_deque.pop() # remove:3 # removing on the left end of the list removed_front = my_deque.popleft() # remove:-1 # get the length of the list length = len(my_deque) print("Length of deque:", length) # output: Length of deque: 3 # displaying elements using a loop print("Current elements in deque:") for item in my_deque: print(item) # output: # Current elements in deque: # 0 # 1 # 2#بدانیم | #تست_تایم | آموزش پایتون
آموزش پایتون
🥸خروجی قطعه کد بالا کدام است؟ #تست_تایم | آموزش پایتون
پاسخ صحیح: گزینهA
🔰حذف پس زمینه عکس با پایتون
🔰Remove the Background of an Image Using Python
# pip install rembg pillow from rembg import remove from PIL import Image # Photo address inputPath = "in.png" outputPath = "out.png" input = Image.open(inputPath) output = remove(input) output.save(outputPath)#بدانیم | #rembg | آموزش پایتون
آموزش پایتون
🧠خروجی قطعه کد بالا کدام است؟ #تست_تایم | آموزش پایتون
پاسخ صحیح: گزینهD