آموزش پایتون - افزودن آیتمها
افزودن آیتمها به مجموعه (Set)
افزودن آیتمها به مجموعه به معنای گنجاندن عناصر جدید در یک مجموعه موجود است. در پایتون، مجموعهها تغییرپذیر (mutable) هستند؛ به این معنی که میتوانید آنها را پس از ایجاد تغییر دهید. اگرچه عناصر درون یک مجموعه باید تغییرناپذیر (immutable) باشند (مانند اعداد صحیح، رشتهها یا تاپلها)، خود مجموعه قابل تغییر است.
شما میتوانید با استفاده از روشهای مختلفی مانند add() ،update() یا عملیاتهای مجموعه مانند اجتماع (|) و درک مجموعه (set comprehension)، آیتمها را به یک مجموعه اضافه کنید.
یکی از ویژگیهای اصلی مجموعهها، توانایی آنها در نگهداری اشیاء تغییرناپذیر (هشپذیر یا hashable) است. دلیل این امر این است که مجموعهها در داخل از یک جدول هش (hash table) برای بررسی سریع عضویت استفاده میکنند. اشیاء تغییرناپذیر هشپذیر هستند، به این معنی که مقدار هش آنها در طول طول عمرشان هرگز تغییر نمیکند.
افزودن آیتم به مجموعه با استفاده از متد add()
متد add() در پایتون برای افزودن یک عنصر تکی به مجموعه استفاده میشود. این متد در صورتی که عنصر مشخصشده قبلاً وجود نداشته باشد، آن را درج کرده و مجموعه را تغییر میدهد. اگر عنصر از قبل در مجموعه وجود داشته باشد، متد add() هیچ تغییری در مجموعه ایجاد نمیکند.
سنتکس (Syntax)
در ادامه، سنتکس افزودن یک عنصر به مجموعه آمده است −
set.add(obj)
که در آن، obj یک شیء از هر نوع تغییرناپذیر است.
مثال
در مثال زیر، ما یک مجموعه خالی به نام "language" را مقداردهی اولیه کرده و با استفاده از متد add() عناصری را به آن اضافه میکنیم −
# Defining an empty set
language = set()
# Adding elements to the set using add() method
language.add("C")
language.add("C++")
language.add("Java")
language.add("Python")
# Printing the updated set
print("Updated Set:", language)
خروجی زیر حاصل خواهد شد −
Updated Set: {'Python', 'Java', 'C++', 'C'}
افزودن آیتمهای مجموعه با استفاده از متد update()
در پایتون، متد update() از کلاس مجموعه برای افزودن چند عنصر به مجموعه استفاده میشود. این متد با افزودن عناصر از یک شیء قابل پیمایش یا قابل تکرار (iterable) مانند یک مجموعه دیگر، لیست، تاپل یا رشته به مجموعه فعلی، آن را تغییر میدهد. عناصر موجود در شیء قابل پیمایش در صورتی که از قبل وجود نداشته باشند، در مجموعه درج میشوند.
سنتکس (Syntax)
در ادامه، سنتکس به روزرسانی یک عنصر در مجموعه آمده است −
set.update(obj)
که در آن، obj یک مجموعه یا یک شیء دنبالهای (لیست، تاپل، رشته) است.
مثال: افزودن یک آیتم تکی به مجموعه
در مثال زیر، یک مجموعه به نام "my_set" را مقداردهی اولیه میکنیم. سپس از متد update() برای افزودن عنصر "4" به مجموعه استفاده میکنیم −
# Define a set
my_set = {1, 2, 3}
# Adding element to the set
my_set.update([4])
# Print the updated set
print("Updated Set:", my_set)
خروجی کد بالا به صورت زیر است −
Updated Set: {1, 2, 3, 4}
مثال: افزودن هر نوع شیء دنبالهای به عنوان آیتمهای مجموعه
متد update() همچنین هر شیء دنبالهای را به عنوان آرگومان میپذیرد.
در این مثال، ابتدا یک مجموعه و یک تاپل به نامهای lang1 و lang2 شامل زبانهای برنامهنویسی مختلف تعریف میکنیم. سپس تمام عناصر را از "lang2" با استفاده از متد update() به "lang1" اضافه میکنیم −
# Defining a set
lang1 = {"C", "C++", "Java", "Python"}
# Defining a tuple
lang2 = {"PHP", "C#", "Perl"}
lang1.update(lang2)
print (lang1)
نتیجه به دست آمده به صورت زیر است −
{'Python', 'C++', 'C#', 'C', 'Java', 'PHP', 'Perl'}
مثال
در این مثال، یک مجموعه از یک رشته ساخته میشود و رشته دیگری به عنوان آرگومان برای متد update() استفاده میشود −
set1 = set("Hello")
set1.update("World")
print (set1)
خروجی زیر حاصل خواهد شد −
{'H', 'r', 'o', 'd', 'W', 'l', 'e'}
افزودن آیتمهای مجموعه با استفاده از عملگر اجتماع (Union)
در پایتون، از عملگر اجتماع (|) برای انجام عملیات اجتماع بین دو مجموعه استفاده میشود. اجتماع دو مجموعه شامل تمام عناصر متمایز موجود در هر یک از مجموعهها، بدون هیچ گونه عنصر تکراری است.
ما میتوانیم با انجام عملیات اجتماع بین دو مجموعه با استفاده از عملگر "|" یا تابع union()، آیتمهای مجموعه را اضافه کنیم؛ این کار عناصر هر دو مجموعه را در یک مجموعه جدید که شامل تمام عناصر منحصربهفرد موجود در هر یک از مجموعههای اصلی است، ترکیب میکند.
مثال
مثال زیر مجموعهها را با استفاده از متد union() و عملگر | ترکیب میکند تا مجموعههای جدیدی شامل عناصر منحصربهفرد از مجموعههای اصلی ایجاد کند −
# Defining three sets
lang1 = {"C", "C++", "Java", "Python"}
lang2 = {"PHP", "C#", "Perl"}
lang3 = {"SQL", "C#"}
# Performing union operation
combined_set1 = lang1.union(lang2)
combined_set2 = lang2 | lang3
# Print the combined set
print ("Combined Set1:", combined_set1)
print("Combined Set2:", combined_set2)
خروجی کد بالا به صورت زیر است −
Combined Set1: {'C#', 'Perl', 'C++', 'Java', 'PHP', 'Python', 'C'}
Combined Set2: {'C#', 'Perl', 'PHP', 'SQL'}
مثال
اگر یک شیء دنبالهای به عنوان آرگومان به متد union() داده شود، پایتون به طور خودکار ابتدا آن را به یک مجموعه تبدیل کرده و سپس اجتماع را انجام میدهد −
lang1 = {"C", "C++", "Java", "Python"}
lang2 = ["PHP", "C#", "Perl"]
lang3 = lang1.union(lang2)
print (lang3)
خروجی تولید شده به صورت زیر است −
{'PHP', 'C#', 'Python', 'C', 'Java', 'C++', 'Perl'}
افزودن آیتمهای مجموعه با استفاده از درک مجموعه (Set Comprehension)
در پایتون، درک مجموعه (set comprehension) راهی برای ایجاد مجموعهها با استفاده از یک خط کد است. این ویژگی به شما امکان میدهد با اعمال یک عبارت روی هر آیتم در یک شیء قابل پیمایش (مانند لیست، تاپل یا range) و اختیاری شامل یک شرط برای فیلتر کردن عناصر، یک مجموعه جدید تولید کنید.
ما میتوانیم با پیمایش روی یک شیء قابل پیمایش، اعمال یک عبارت روی هر عنصر، و قرار دادن عبارت درک درون آکولاد {} آیتمهای جدید به مجموعه اضافه کنیم تا یک مجموعه جدید شامل نتایج عبارت اعمالشده روی هر عنصر تولید شود.
مثال
در مثال زیر، یک لیست از اعداد صحیح تعریف میکنیم و سپس از درک مجموعه برای تولید مجموعهای شامل توان دوم (مربع) آن اعداد صحیح استفاده میکنیم −
# Defining a list containing integers
numbers = [1, 2, 3, 4, 5]
# Creating a set containing squares of numbers using set comprehension
squares_set = {num ** 2 for num in numbers}
# Printing the set containing squares of numbers
print("Squares Set:", squares_set)
خروجی کد بالا به صورت زیر است −
Squares Set: {1, 4, 9, 16, 25}
پیشرفت مطالعه: وضعیت خواندهشدن این درس فقط در همین مرورگر ذخیره میشود؛ بدون نیاز به حساب کاربری.