آموزش پایتون - عملگرهای مجموعه

عملگرهای مجموعه (Set) در پایتون

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

پایتون این موارد را با عملگرهای مجموعه زیر پیاده‌سازی می‌کند −

عملگر اجتماع مجموعه در پایتون (|)

اجتماع دو مجموعه، مجموعه‌ای شامل تمام عناصر متمایزی است که در A یا در B یا در هر دو وجود دارند. برای مثال،

{1,2}{2,3}={1,2,3}

نمودار زیر اجتماع دو مجموعه را نشان می‌دهد.

Union Of Two Sets

در پایتون، می‌توانید عملیات اجتماع را با استفاده از تابع ()union یا عملگر | انجام دهید. این عملیات عناصر دو مجموعه را ضمن حذف موارد تکراری با هم ترکیب می‌کند و در نتیجه یک مجموعه جدید شامل تمام عناصر منحصر‌به‌فرد از هر دو مجموعه ایجاد می‌شود −

مثال

مثال زیر از عملگر "|" و تابع ()union استفاده می‌کند و اجتماع دو مجموعه را برمی‌گرداند −

set1 = {1, 2, 3}
set2 = {3, 4, 5}
set3 = {6, 8, 9}
set4 = {9, 45, 73}
union_set1 = set1.union(set2)
union_set2 = set3 | set4
print ('The union of set1 and set2 is', union_set1)
print ('The union of set3 and set4 is', union_set2)

پس از اجرای کد بالا، خروجی زیر را دریافت می‌کنیم −

The union of set1 and set2 is {1, 2, 3, 4, 5}
The union of set3 and set4 is {73, 6, 8, 9, 45}

عملگر اشتراک مجموعه در پایتون (&)

اشتراک دو مجموعه A و B که با A∩B نشان داده می‌شود، شامل تمام عناصری است که هم در A و هم در B مشترک هستند. برای مثال،

{1,2}∩{2,3}={2}

نمودار زیر اشتراک دو مجموعه را نشان می‌دهد.

Intersection Operator

پایتون تابع ()intersection یا عملگر & را برای انجام این عملیات ارائه می‌دهد. مجموعه حاصل فقط شامل عناصری است که در هر دو مجموعه وجود دارند −

مثال

مثال زیر از عملگر & و تابع ()intersection استفاده می‌کند و اشتراک دو مجموعه را برمی‌گرداند −

set1 = {1, 2, 3}
set2 = {3, 4, 5}
set3 = {6, 8, 9}
set4 = {9, 8, 73}
intersection_set1 = set1.intersection(set2)  
intersection_set2 = set3  & set4
print ('The intersection of set1 and set2 is', intersection_set1)
print ('The intersection of set3 and set4 is', intersection_set2)

کد بالا خروجی زیر را تولید می‌کند −

The intersection of set1 and set2 is {3}
The intersection of set3 and set4 is {8, 9}

عملگر تفاضل مجموعه در پایتون (-)

تفاضل (منهای) دو مجموعه شامل عناصری است که در مجموعه اول وجود دارند اما در مجموعه دوم نیستند. این مفهوم به صورت زیر تعریف می‌شود: مجموعه A - B شامل عناصری است که در A هستند اما در B وجود ندارند. برای مثال،

If A={1,2,3} and B={3,5}, then AB={1,2}

نمودار زیر تفاضل دو مجموعه را نشان می‌دهد −

difference_operator

پایتون تابع ()difference یا عملگر - را برای انجام این عملیات ارائه می‌دهد. مجموعه حاصل شامل عناصری است که منحصر به مجموعه اول هستند −

مثال

مثال زیر از عملگر "-" و تابع ()difference استفاده می‌کند و تفاضل دو مجموعه را برمی‌گرداند −

set1 = {1, 2, 3}
set2 = {3, 4, 5}
set3 = {6, 8, 9}
set4 = {9, 8, 73}
difference_set1 = set1.difference(set2)
difference_set2 = set3 - set4
print ('The difference between set1 and set2 is', difference_set1)
print ('The difference between set3 and set4 is', difference_set2)

خروجی را به صورت زیر دریافت می‌کنیم −

The difference between set1 and set2 is {1, 2}
The difference between set3 and set4 is {6}

توجه داشته باشید که "s1-s2" با "s2-s1" یکسان نیست.

عملگر تفاضل متقارن مجموعه در پایتون

تفاضل متقارن دو مجموعه شامل عناصری است که در یکی از مجموعه‌ها وجود دارند اما در هر دو مجموعه نیستند. تفاضل متقارن A و B با "A Δ B" نشان داده می‌شود و به صورت زیر تعریف می‌گردد −

A Δ B = (A − B) ∪ (B − A)

اگر A = {1, 2, 3, 4, 5, 6, 7, 8} و B = {1, 3, 5, 6, 7, 8, 9} باشد، آن‌گاه A Δ B = {2, 4, 9} خواهد بود.

نمودار زیر تفاضل متقارن بین دو مجموعه را نشان می‌دهد −

Symmetric Difference

پایتون تابع ()symmetric_difference یا عملگر ^ را برای انجام این عملیات ارائه می‌دهد. مجموعه حاصل شامل عناصری است که برای هر مجموعه منحصر‌به‌فرد هستند.

مثال

مثال زیر از عملگر "^" و تابع ()symmetric_difference استفاده می‌کند و تفاضل متقارن دو مجموعه را برمی‌گرداند −

set1 = {1, 2, 3}
set2 = {3, 4, 5}
set3 = {6, 8, 9}
set4 = {9, 8, 73}
symmetric_difference_set1 = set1.symmetric_difference(set2)  
symmetric_difference_set2 = set3 ^ set4
print ('The symmetric difference of set1 and set2 is', symmetric_difference_set1)
print ('The symmetric difference of set3 and set4 is', symmetric_difference_set2)

نتیجه تولید شده به صورت زیر است −

The symmetric difference of set1 and set2 is {1, 2, 4, 5}
The symmetric difference of set3 and set4 is {73, 6}

عملیات بررسی زیرمجموعه در پایتون

شما می‌توانید با استفاده از تابع ()issubset یا عملگر <= بررسی کنید که آیا یک مجموعه زیرمجموعه مجموعه دیگری است یا خیر. یک مجموعه A زیرمجموعه مجموعه دیگری به نام B در نظر گرفته می‌شود اگر تمام عناصر A در B نیز وجود داشته باشند −

مثال

مثال زیر از عملگر "=>" و تابع ()issubset استفاده می‌کند و بررسی زیرمجموعه بودن دو مجموعه را برمی‌گرداند −

set1 = {1, 2}
set2 = {1, 2, 3, 4}
set3 = {64, 47, 245, 48}
set4 = {64, 47, 3}
is_subset1 = set1.issubset(set2)  
is_subset2 = set3 <= set4
print ('set1 is a subset of set2:', is_subset1)
print ('set3 is a subset of set4:', is_subset2)

نتیجه تولید شده به صورت زیر است −

set1 is a subset of set2: True
set3 is a subset of set4: False

پیشرفت مطالعه: وضعیت خوانده‌شدن این درس فقط در همین مرورگر ذخیره می‌شود؛ بدون نیاز به حساب کاربری.