Python - Remove Set Items

در پایتون، Set یک مجموعه‌ی بدون ترتیب و بدون عنصر تکراری است.
برای حذف اعضا، چند متد و عملگر مختلف وجود دارد:

🔹 1️⃣ ()remove – حذف با خطا در نبود عنصر

یک مقدار مشخص را حذف می‌کند.
اگر عضو وجود نداشته باشد، خطای KeyError رخ می‌دهد.

fruits = {"apple", "banana", "cherry"} fruits.remove("banana") print(fruits) # {'apple', 'cherry'} # fruits.remove("mango") # KeyError: 'mango'

🔹 2️⃣ ()discard – حذف بدون خطا

مشابه ()remove ولی اگر عنصر وجود نداشته باشد، هیچ خطایی نمی‌دهد.

fruits = {"apple", "banana", "cherry"} fruits.discard("banana") print(fruits) # {'apple', 'cherry'} fruits.discard("mango") # بدون خطا

🔹 3️⃣ ()pop – حذف و برگرداندن یک عضو تصادفی

یک عنصر تصادفی را حذف کرده و برمی‌گرداند.

fruits = {"apple", "banana", "cherry"} item = fruits.pop() print(item) # یک عضو تصادفی (مثلاً 'banana') print(fruits) # بقیه اعضا

چون Set بدون ترتیب است، نمی‌توان مشخص کرد کدام عضو حذف می‌شود.

🔹 4️⃣ ()clear – حذف همه‌ی عناصر

تمام آیتم‌های Set را پاک می‌کند ولی خود شیء Set باقی می‌ماند.

fruits = {"apple", "banana"} fruits.clear() print(fruits) # set()

🔹 5️⃣ del – حذف کامل Set

کل شیء Set را از حافظه پاک می‌کند.

fruits = {"apple", "banana"} del fruits # حالا دیگر متغیر fruits وجود ندارد

✅ خلاصه سریع

متد / عملگررفتار
remove(x)حذف یک عضو مشخص، خطا در صورت نبودن
discard(x)حذف یک عضو مشخص، بدون خطا
()popحذف و بازگرداندن یک عضو تصادفی
()clearپاک‌کردن همه اعضا (Set خالی می‌شود)
del set_nameحذف کامل شیء Set

💡 نکات:

  • چون Set unordered است، با ()pop نمی‌توان پیش‌بینی کرد کدام عنصر حذف می‌شود.

  • برای حذف ایمن بدون نگرانی از وجود یا عدم وجود عضو، از ()discard استفاده کنید.