بکندباز

متد ‎pop()‎‎ در پایتون

مثال

حذف دومین آیتم لیست 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)

 

backendbaz

مدیر وب سایت بکندباز

دیدگاه‌ها

*
*

    سارا پاسخ

    عملیات پاپ روی کدوم ساختمان داده وجود نداره؟

      ‏زهره احمدی پاسخ

      متد pop روی مجموعه های list، set و dict قرار داره ولی برای مجموعه tuple چنین متدی نداریم چوت اعضای تاپل غیر قابل تغییر هستن

    محمد پاسخ

    سلام 
    چطوری عنصری که حذف شده رو نمایش بدیم ؟

      zohreh پاسخ

      سلام

      در مثال اول همین صفحه، متغیر x که چاپ شده همون عنصر حذف شده هست. که خروجی متد pop هست.

    مرسل پاسخ

    سلام وقت بخیر در دستور Range آیا برای حذف عدد خاصی از pop  l میشه استفاده کرد ؟ به چه صورت ؟
     
    سپاسگزارم

      zohreh پاسخ

      سلام وقت بخیر

      بیشتر توضیح بدید، یعنی می خواین از لیست اعدادی که تابع range تولید می کنه یک عدد رو حذف کنید؟ می خواین در یک حلقه از تابع range استفاده کنید؟ ...

      کلاً هدف کار رو هم اگر توضیح بدید خوبه که بتونم راه حل مناسبش رو بگم.

    زهره پاسخ

    سلام
    fruits = ['apple', 'banana', 'cherry',"blue"]
    fru = fruits
    fru.pop()
    print(fruits)
    print(fru)
    در خروجی آیتم آخر هر دو لیست حذف میشود
    میشود لطفا برایم توضیح دهید چرا

      backendbaz پاسخ

      سلام! بله، در کدی که نوشتید، وقتی از متد pop() برای حذف آیتم آخر از لیست fru استفاده می‌کنید، این تغییر روی هر دو لیست fru و fruits تأثیر می‌گذارد. دلیل این موضوع به نحوه‌ی تخصیص متغیرها در پایتون برمی‌گردد.

      در اینجا وقتی fru = fruits را می‌نویسید، پایتون یک کپی جدید از fruits نمی‌سازد؛ بلکه فقط به همان لیست اصلی (fruits) اشاره می‌کند. در نتیجه هر تغییری که روی fru یا fruits اعمال کنید، بر روی هر دو تأثیر می‌گذارد، زیرا هر دو متغیر به یک مکان در حافظه اشاره می‌کنند.

      برای ایجاد یک کپی مستقل از لیست fruits و جلوگیری از تغییرات همزمان، می‌توانید از روش زیر استفاده کنید:

      fru = fruits.copy()
      

      یا با استفاده از برش لیست:

      fru = fruits[:]
      

      در این صورت، تغییراتی که روی fru اعمال می‌کنید، روی fruits تأثیری نخواهد گذاشت و برعکس.