آموزش متدهای (توابع) set یا مجموعه در پایتون (Python)

آموزش متدهای (توابع) set یا مجموعه در پایتون (Python)

در مقاله قبل به طور مفصل درباره نوع داده ای set یا مجموعه در پایتون صحبت کردیم و گفتیم که تعدادی متد دارد که در مقاله بعدی با مثال آن ها را برای شما شرح می دهیم. حال زمان آن رسیده که با خواندن این مقاله بیشتر در مورد این متدها آشنا شوید و بتوانید با این نوع داده به صورت حرفه ای کار کنید.

بدون اتلاف وقت به سراغ اولین متد و کاربرد های آن می رویم و در ادامه همه آن ها را برای شما شرح می دهیم.

زمان مطالعه: 3 دقیقه
بازدید: 3436
پرسش و پاسخ: 0

متد add

این متد برای اضافه کردن آیتم به set به کار می رود.

نکته: در این متد اگر عنصری که قصد اضافه کردن آن را دارید از قبل وجود داشته باشد، پایتون از اضافه کردن آن خودداری می کند.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد add نوع داده ای set در پایتون (Python)
پارامتر توضیحات
elmnt ضروری، مقدار مورد نظر برای اضافه شدن به set

 

مثال: در این مثال مقدار “orange” به عنوان یک آیتم جدید به مجموعه thisset اضافه می شود.

thisset = {"apple", "banana", "cherry"}
thisset.add("orange")
print(fruits)

متد ()add نوع داده ای set در پایتون (Python)

متد clear

این متد تمام آیتم های موجود درون set را به طور کامل حذف می کند.

فاقد پارامتر ورودی می باشد.

مثال: در این مثال تمام آیتم های مجموعه thisset به طور کامل پاک می شوند.

thisset = {"apple", "banana", "cherry"}
thisset.clear()
print(fruits)

متد ()clear نوع داده ای set در پایتون (Python)

متد copy

این متد یک کپی از set مورد نظر ایجاد می کند.

فاقد پارامتر ورودی می باشد.

مثال: در این مثال از مجموعه fruits یک کپی ایجاد می کند.

fruits = {"apple", "banana", "cherry"}
x = fruits.copy()
print(x)

متد ()copy نوع داده ای set در پایتون (Python)

متد difference

این متد یک مجموعه جدید برگشت می دهد که حاوی آیتم های یونیکی است که در مجموعه اول وجود دارد ولی در مجموعه دوم وجود ندارند است.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد difference نوع داده ای set دز پایتون (Python)
پارامتر توضیحات
Set ضروری، مجموعه برای بررسی تفاوت

 

مثال: در این مثال یک مجموعه جدید ایجاد می شود که فقط شامل آیتم های یونیکی است که در مجموعه x است.

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
z = x.difference(y)
print(z)

متد ()difference نوع داده ای set در پایتون (Python)

متد difference_update

این متد آیتم های تکراری در دو مجموعه را حذف می کند.

این متد با متد difference() متفاوت است زیرا در متد difference() یک مجموعه جدید ساخته می شود و آیتم تکراری از آن حذف می شود و مجموعه اصلی دست نخورده باقی می ماند اما در این متد آیتم تکراری از مجموعه اصلی حذف می شود.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد difference_update نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set ضروری، مجموعه برای بررسی تفاوت

 

مثال: در این مثال آیتم تکراری از مجموعه x حذف می شود.

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
x.difference_update(y)
print(x)

متد ()difference_update نوع داده ای set در پایتون (Python)

متد discard

این متد آیتم مشخص شده را از مجموعه حذف می کند.

این متد با متد remove() متفاوت است زیرا در متد remove() اگر آیتم مورد نظر برای حذف وجود نداشته باشد، خطایی را صادر می کند اما در این متد اگر آیتم مورد نظر وجود نداشته باشد، پیغام خطایی صادر نمی شود.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد discard نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Value ضروری، آیتم مورد نظر برای جستجو و حذف آن

 

مثال: در این مثال آیتم “banana” از مجموعه fruits جذف می شود.

fruits = {"apple", "banana", "cherry"}
fruits.discard("banana")
print(fruits)

متد ()discard نوع داده ای set در پایتون (Python)

متد intersection

این متد یک متد جدید برمیگرداند که حاوی آیتم های تکراری بین دو یا چند مجموعه است.

یعنی چی؟ یعنی اینکه اگر دو مجموعه با هم مقایسه می شوند، مجموعه جدید فقط شامل آیتم هایی می شود که در هر دو مجموعه وجود داشته باشند و یا اگر بیش از دو مجموعه بررسی می شود شامل آیتم هایی می شود که در همه مجموعه ها وجود داشته باشد.

این متد دارای دو یا بیش از دو پارامتر ورودی است.

متد intersection نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set1 ضروری، مجموعه ای برای جستجوی آیتم های تکراری
Set2

اختیاری، مجموعه دیگر برای جستجوی آیتم های تکراری

می توانید هر تعداد مجموعه که خواستید بررسی کنید بعد از آیتم دوم آن را وارد کنید

مجموعه ها را با کاما از هم جدا کنید

 

مثال: در این مثال سه مجموعه با همدیگر مقایسه می شوند و آیتم هایی که در هر سه مجموعه تکرار شده اند را در یک مجموعه جدید برمیگرداند.

x = {"a", "b", "c"}
y = {"c", "d", "e"}
z = {"f", "g", "c"}
result = x.intersection(y, z)
print(result)

متد ()intersection نوع داده ای set در پایتون (Python)

متد intersection_update

این متد مجموعه مورد نظر را با یک یا چند مجموعه بررسی می کند و آیتم های یونیک را از مجموعه مورد نظر حذف می کند.

این متد با متد intersection() متفاوت است، در متد intersection() یک لیست جدید به وجود می آید و آیتم های تکراری درون آن قرار میگیرد اما در این متد آیتم های یونیک از مجموعه اصلی حذف می شود و تنها آیتم های تکراری در آن باقی می ماند.

این متد دارای دو یا بیش از دو پارامتر ورودی است.

متد intersection_update نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set1 ضروری، مجموعه ای برای جستجوی آیتم های تکراری
Set2

اختیاری، مجموعه دیگر برای جستجوی آیتم های تکراری

می توانید هر تعداد مجموعه که خواستید بررسی کنید بعد از آیتم دوم آن را وارد کنید

مجموعه ها را با کاما از هم جدا کنید

 

مثال: در این مثال سه مجموعه با همدیگر مقایسه می شوند و آیتم هایی که در هر سه مجموعه تکرار شده اند را در مجموعه اصلی نگه میدارد و بقیه آیتم ها را حذف می کند. 

x = {"a", "b", "c"}
y = {"c", "d", "e"}
z = {"f", "g", "c"}
x.intersection_update(y, z)
print(x)

متد ()intersection_update نوع داده ای set در پایتون (Python)

متد isdisjoint

در این متد اگر همه مقادیر در دو مجموعه مقایسه شده یونیک باشند مقدار true برگشت داده می شود.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد ()isdisjoint نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set ضروری، مجموعه برای بررسی تفاوت

 

مثال: اگر آیتم هایی که در مجموعه x وجود دارد در مجموعه y وجود نداشته باشد، مقدار true را برمیگرداند.

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "facebook"}
z = x.isdisjoint(y)
print(z)

متد ()isdisjoint نوع داده ای set در پایتون (Python)

متد issubset

این متد اگر همه آیتم های موجود در مجموعه، در مجموعه مشخص شده وجود داشته باشد یا به اصطلاح زیر مجموعه مجموعه مشخص شده باشد مقدار true را برمیگرداند، در غیر این صورت مقدار false برگشت داده می شود.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد ()issubset نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set ضروری، مجموعه برای بررسی وجستجوی مقدار مساوی

 

مثال: در این مثال اگر مجموعه x زیر مجموعه y باشد مقدار true برگشت داده می شود.

x = {"a", "b", "c"}
y = {"f", "e", "d", "c", "b", "a"}
z = x.issubset(y)
print(z)

متد ()issubset نوع داده ای set در پایتون (Python)

متد issuperset

این متد اگر تمام آیتم های مجموعه مشخص شده درون مجموعه اصلی وجود داشته باشد یا به اصطلاح مجموعه مشخص شده زیر مجموعه مجموعه اصلی باشد مقدار true برگشت داده می شود، در غیر این صورت مقدار false برمیگرداند.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد ()issuperset نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set ضروری، مجموعه برای بررسی وجستجوی مقدار مساوی

 

مثال: در این مثال اگر مجموعه y زیر مجموعه x باشد مقدار true برگشت داده می شود.

x = {"f", "e", "d", "c", "b", "a"}
y = {"a", "b", "c"}
z = x.issuperset(y)
print(z)

متد ()issuperset نوع داده ای set در پایتون (Python)

متد pop

این متد یک آیتم را به صورت تصادفی از مجموعه حذف می کند.

توجه: این متد آیتم حذف شده را برمیگرداند.

فاقد پارامتر ورودی می باشد.

مثال: در این مثال یک آیتم به صورت تصادفی حذف می شود.

fruits = {"apple", "banana", "cherry"}
fruits.pop()
print(fruits)

متد ()pop نوع داده ای set در پایتون (Python)

متد remove

این متد آیتم مشخص شده ای را از مجموعه حذف می کند.

این متد با متد discard() متفاوت است زیرا در متد discard() اگر آیتم مورد نظر برای حذف وجود نداشته باشد، خطایی را صادر نمی کند اما در این متد اگر آیتم مورد نظر وجود نداشته باشد، پیغام خطایی صادر می شود.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد ()remove نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Item ضروری، آیتم مورد نظر برای جستجو و حذف آن

 

مثال: در این مثال آیتم “banana” از مجموعه حذف می شود.

fruits = {"apple", "banana", "cherry"}
fruits.remove("banana")
print(fruits)

متد ()remove نوع داده ای set در پایتون (Python)

متد symmetric_difference

این متد تمام آیتم های یونیک در دو مجموعه بررسی شده را در مجموعه جدیدی برمیگرداند و آیتم های تکراری برگشت داده نمی شوند.

یعنی چی؟ یعنی مجموعه برگشتی شامل موارد تکرار شده در دو مجموعه بررسی شده نمی باشد.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد ()symmetric_difference نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set ضروری، مجموعه ای برای بررسی آیتم های آن ها

 

مثال: در این مثال مجموعه جدیدی  برگشت داده می شود که شامل تمام آیتم های دو مجموعه به جز آیتم های تکرار شده در دو مجموعه می باشد.

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
z = x.symmetric_difference(y)
print(z)

متد ()symmetric_difference نوع داده ای set در پایتون (Python)

متد symmetric_difference_update

این متد دو مجموعه را بررسی می کند و آیتم های تکراری در دو مجموعه را حذف می کند و آن را در مجموعه اصلی برگشت می دهد نه در مجموعه جدید.

دارای یک پارامتر ورودی است که در جدول زیر آن را بررسی می کنیم.

متد ()symmetric_difference_update نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set ضروری، مجموعه ای برای بررسی آیتم های آن ها

 

مثال: در این مثال موارد تکراری در دو مجموعه را حذف می کند و باقی مقادیر را در مجموعه اصلی (مجموعه x) برمیگرداند.

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
x.symmetric_difference_update(y)
print(x)

متد ()symmetric_difference_update نوع داده ای set در پایتون (Python)

متد union

این متد یک مجموعه را برمیگرداند که شامل تمام آیتم های مجموعه اصلی و همه مجموعه های مشخص شده است.

شما هر تعداد مجموعه ای که بخواهید میتوانید اضافه کنید و آن ها را با کاما از هم جدا کنید.

لازم نیست فقط از مجموعه ها استفاده کنید، می توانید از هر شی قابل تکراری برای ادغام استفاده کنید.

اگر در دو مجموعه مقدار تکراری باشد فقط یکی از آن ها را برمیگرداند.

این متد دارای دو یارامتر یا بیش از دو م پارامتر است که به تعداد دلخواه می توانید اضافه کنید، در جدول زیر به بررسی آن ها می پردازیم.

متد ()union نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set1 ضروری، شی قابل پیمایش برای ادغام
Set2

اختیاری، شی قابل پیمایش دیگر برای ادغام

شما می توانید هر تعداد شی قابل پیمایش برای ادغام اضافه کنید

هر شی با کاما باید از هم جدا شوند

 

مثال: در این مثال 3 مجموعه با یکدیگر ادغام می شوند.

x = {"a", "b", "c"}
y = {"f", "d", "a"}
z = {"c", "d", "e"}
result = x.union(y, z)
print(result)

متد ()union نوع داده ای set در پایتون (Python)

متد update

این متد دو مجموعه را با یکدیگر ادغام می کند.

اگر یک آیتم تکراری در هر دو مجموعه وجود داشته باشد فقط یکی از آن ها به مجموعه اصلی اضافه می شود.

دارای یک پارامتر ورودی است که در جدول زیر به بررسی آن می پردازیم.

متد ()update نوع داده ای set در پایتون (Python)
پارامتر توضیحات
Set ضروری، شی قابل پیمایش برای افزودن آیتم های آن  به مجموعه اصلی

 

مثال: در این مثال آیتم های مجموعه y به مجموعه x اضافه می شوند (ادغام می شوند).

x = {"apple", "banana", "cherry"}
y = {"google", "microsoft", "apple"}
x.update(y)
print(x)

متد ()update نوع داده ای set در پایتون (Python)

خب در این مقاله به طور مفصل به متدهای نوع داده ای set پرداختیم و کاربردها و نحوه استفاده از آن ها را به شما گفتیم، در مقاله بعدی به طور مفصل در مورد نوع داده ای dictionary یا همان فرهنگ لغت با شما صحبت خواهیم کرد.

بهزاد میرزازاده
مسیر درست با پرسش های درست ساخته می شود

مشاهده تمام مطالب نویسنده