🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ Hossein Developer
ویژگی در set ها
جامعه پایتون (وب) ایجاد شده در ۱۶ فروردین ۱۴۰۴

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

چیزی که راجع به set‌ها بررسی کردم، این بود که مثل آرایه‌ها می‌شود آن‌ها رو تغییر داد. مثلا متدهای add و  remove دارند. 

این نکته که فرمودید برخلاف لیست‌ها قابل تغییر نیستند، منظورتون یه چیزی شبیه به record‌ها در C# یا حتی string در زبان برنامه نویسی هست که immutable هستند و وقتی ما + در string استفاده می‌کنیم، عملا python interpreter میاد یه string جدید با مقدار حاصل در یک جای جدید از memory در نظر می‌گیره و مقادیر string اولیه تغییر پیدا نمی‌کنه؟

ممنون از شما

سلام،
Setها تو پایتون mutable هستن، یعنی می‌تونی مستقیماً باهاشون تغییر ایجاد کنی (مثل add یا remove) و این تغییرات روی همون شیء تو حافظه اعمال می‌شه، نه اینکه یه کپی جدید ساخته بشه. برخلاف stringها که immutable هستن و هر تغییر (مثل +) یه رشته جدید می‌سازه، Setها مثل لیست‌ها قابل‌تغییرن.

اینکه داخل ویدیو چه چیزی گفته شده رو باید بررسی کرنم، ممکنه منظور استاد چیز دیگری باشد.

محسن موحد ۱۷ فروردین ۱۴۰۴، ۰۷:۲۸