مثال
حذف دومین آیتم لیست fruit
:
fruits = ['apple', 'banana', 'cherry']
x = fruits.pop(1)
print(x)
print(fruits)
توضیحات
متد pop()
یک آیتم از لیست را که ایندکس آن مشخص شده در خروجی برگردانده و همچنین آن را حذف می کند.
سینتکس
list.pop(pos)
مقادیر پارامتر ها
پارامتر | توضیح |
---|---|
pos | اختیاری. ایندکس آیتمی که باید حذف شود. پیشفرض = 1- یعنی آخرین عضو |
مثال
حذف دومین آیتم و برگرداندن آن:
fruits = ['apple', 'banana', 'cherry']
x = fruits.pop(1)
عملیات پاپ روی کدوم ساختمان داده وجود نداره؟
متد pop روی مجموعه های list، set و dict قرار داره ولی برای مجموعه tuple چنین متدی نداریم چوت اعضای تاپل غیر قابل تغییر هستن
سلام
چطوری عنصری که حذف شده رو نمایش بدیم ؟
سلام
در مثال اول همین صفحه، متغیر x که چاپ شده همون عنصر حذف شده هست. که خروجی متد pop هست.
سلام وقت بخیر در دستور Range آیا برای حذف عدد خاصی از pop l میشه استفاده کرد ؟ به چه صورت ؟
سپاسگزارم
سلام وقت بخیر
بیشتر توضیح بدید، یعنی می خواین از لیست اعدادی که تابع range تولید می کنه یک عدد رو حذف کنید؟ می خواین در یک حلقه از تابع range استفاده کنید؟ ...
کلاً هدف کار رو هم اگر توضیح بدید خوبه که بتونم راه حل مناسبش رو بگم.
سلام
fruits = ['apple', 'banana', 'cherry',"blue"]
fru = fruits
fru.pop()
print(fruits)
print(fru)
در خروجی آیتم آخر هر دو لیست حذف میشود
میشود لطفا برایم توضیح دهید چرا
سلام! بله، در کدی که نوشتید، وقتی از متد
pop()
برای حذف آیتم آخر از لیستfru
استفاده میکنید، این تغییر روی هر دو لیستfru
وfruits
تأثیر میگذارد. دلیل این موضوع به نحوهی تخصیص متغیرها در پایتون برمیگردد.در اینجا وقتی
fru = fruits
را مینویسید، پایتون یک کپی جدید ازfruits
نمیسازد؛ بلکه فقط به همان لیست اصلی (fruits
) اشاره میکند. در نتیجه هر تغییری که رویfru
یاfruits
اعمال کنید، بر روی هر دو تأثیر میگذارد، زیرا هر دو متغیر به یک مکان در حافظه اشاره میکنند.برای ایجاد یک کپی مستقل از لیست
fruits
و جلوگیری از تغییرات همزمان، میتوانید از روش زیر استفاده کنید:fru = fruits.copy()
یا با استفاده از برش لیست:
fru = fruits[:]
در این صورت، تغییراتی که روی
fru
اعمال میکنید، رویfruits
تأثیری نخواهد گذاشت و برعکس.