پایتون ترفند

بسم الله الرحمن الرحیم

پایتون ترفند

بسم الله الرحمن الرحیم

سلام خوش آمدید

مجموعه ها در پایتون

يكشنبه, ۲ مهر ۱۴۰۲، ۰۷:۵۵ ب.ظ

بسم الله الرحمن الرحیم

به نام خدایی که به من قدرت نوشتن داد...

سلام

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

 

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

حالا اصلا مجموعه به چه دردمون میخوره؟

فرض کنید میخواید اسم ۱۰۰۰ نفر رو بگیرید و اسامی تکراری رو از توشون حذف کنید یا ...

و میشه این کارو تو پایتون انجام داد!

حالا بریم سر اصل مطلب، اصلا تعریف مجموعه تو پایتون چیه؟

مجموعه یه نوع داده تکرارگر تو پایتونه که عناصر اون سه تا ویژگی دارن:

۱_ نامرتب

۲_تغییر ناپذیر، البته خود مجموعه رو میشه تغییر داد

۳_یکتا

این سه تا یعنی چی؟

نامرتب بودن یعنی بر خلاف فهرست(list) و چندتایی (tuple) ها، نمیشه با شماره(index) به اعضای یه مجموعه دسترسی پیدا کرد.

غیر قابل تغییر بودن یعنی نمیشه یه عضو رو مستقیم تغییر داد.

یکتا بودن هم یعنی مجموعه عضو تکراری نمی پذیره و اگه عضوی تکراری بود خودکار حذفش میکنه( فکر کنم متوجه ربط مثال بالای مطلب و مجموعه ها شده باشید.)

چطور میشه یه مجموعه رو تعریف کرد؟ دو راه داره:

راه اول :

استفاده از آکولاد :

{1,2,3,4}

راه دوم :

استفاده از تابع توکار set :

set([1,2,3,4])

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

مجموعه خالی رو داخل پایتون با یه تابع set خالی نشون میدیم یعنی اینطوری :

set()

توجه کنید که با {} نمیشه یه مجموعه رو نشون داد و اونطوری یه dict خواهیم داشت نه set.

به دست آوردن تعداد اعضای مجموعه:

خیلی راحت با تابع توکار len:

len(set(1,2,3))

ناگفته نماند باید نتیجه رو چاپ کنید.

عملگر های قابل اعمال روی مجموعه:

چهار عملگر & ، | ، - و ^ رو میشه روی مجموعه ها اعمال کرد. ( به ترتیب از راست : اجتماع،اشتراک،تفاضل،تفاضل متقارن)

اجتماع :

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

عملگر اجتماع & هست.

اشتراک :

اشتراک یعنی اعضای مشترک دو مجموعه

عملگر اشتراک | هست.

تفاضل:

تفاضل یعنی اعضایی که در مجموعه اول هست، اما در مجموعه دوم نیست.

عملگر تفاضل - هست.

تفاضل متقارن:

تفاضل متقارن یعنی مجموعه ای با اعضای دو مجموعه، با حذف عناصر مشترک.

عملگر تفاضل متقارن ^ هست.

مثال ها :

set1 = {1,2,3,4}
set2 = {4,5,6,7}
print(set1 & set2)
#{1,2,3,4,5,6,7}
print(set1 | set2)
#{4}
print(set1 - set2)
#{1,2,3}
print(set1 ^ set2)
#{1,2,3,5,6,7}

چطور تعداد زیر مجموعه های یک مجموعه رو حساب کنیم؟

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

برای اینکار تابع خاصی وجود نداره اما کافیه ۲ رو به توان تعداد اعضای مجموعه برسونیم.

یعنی این :

print(2**len(set1))
#16

بررسی موجود بودن عضو در مجموعه:

کافیه از عملگر in استفاده کنیم:

print(5 in set1)
#False

تغییر مجموعه:

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

برای افزودن عضو به مجموعه از متد add استفاده می کنیم:

set1.add(5)

با remove هم میشه عضوی رو حذف کرد.

set1.remove(1)

 

جمع بندی:

مجموعه ها واقعا به درد میخورن، حتما ازشون استفاده کنید. و این چیزایی که من گفتم همه چیز در مورد مجموعه ها نبود و خودتون بگردید چیزای جدید پیدا کنید.

راستی تا یادم نرفته منبع برخی مطالب.

خدانگهدار!

 

نظرات (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی

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

آخرین نظرات