راکت
حل شده

متد copy در پایتون

5 پاسخ

سلام دوستان من دقیقا نفهمیدم کارایی و چرا باید از متد ‎copy()‎ در پایتون استفاده کرد

یک نمونه کد :

cities = ['Mumbai', 'London', 'Paris', 'New York']
favCities = cities.copy()
print("Original list: ", cities)
print("Copied list: ", favCities)
ثبت پرسش جدید

پاسخ‌ها

5
احسان داوری
احسان داوری
@ehsndvr

تخصص: برنامه نویس

بهترین پاسخ

سلام
وقتی شما متغیری دارید که مثلا در اون یک لیست از اعداد هست مثل:

MyList = [1,2,3]

و وقتی متغیر MyList مساوی با یک متغیر دیگه قرار میدید یعنی:

MyVar = MyList

شما مقدار متغیرMyList رو به درون متغیر MyVar کپی نکردید/قرار ندادید !
بلکه فقط شما دارید به مقدار متغییر MyList در حافظه اشاره میکنید.
 تصویر
حالا شما اگر تغییری در متغییر MyVar ایجاد کنید، این تغییر در متغیر MyList هم صورت میگیره:
 تصویر

اما اگه از متد copy استفاده کنید، مقدار متغیر MyList درون یک آدرس جدید از حافظه که بهش میگیمMyVar قرار میگیره:
 تصویر
همونطور که در عکس بالا میبینید مقدار متغیر MyList هیچ تغییری نکرد، اما به لیست متغیر MyVar یک 5 اضافه شد.

قبل از copy:
 تصویر
بعد از copy:
 تصویر

امانوئل
امانوئل
@emuatkins

تخصص: :) بـالـاخـَرـہ ڪـَم و زیـاد بلدیم

....
هیچکی نظری نداره؟

میلاد خسروی
میلاد خسروی
@milwad

تخصص: برنامه نویس بامزه

سلام خسته نباشید
ببین خیلی از متد ها هست استفاده زیادی ندارن ولی گذاشتن یه زمانی ممکنه تو از یه جیزی باید copy بگیری بعدش میفهمی که چقدر خوب بوده این متد و لزوم بر استفاده از همه متد ها نیست

شاید پاسخ شما همین‌جا باشد

امانوئل
امانوئل
@emuatkins

تخصص: :) بـالـاخـَرـہ ڪـَم و زیـاد بلدیم

خیلی ممنونم احسان جان توضیحات جامع و کامل بود 🌹

امانوئل
امانوئل
@emuatkins

تخصص: :) بـالـاخـَرـہ ڪـَم و زیـاد بلدیم

@milwad
درست میگین یکسری توابع شاید استفاده زیادی نداشته باشن ولی باید بدونی که برای فلان کار پایتون اون کنارا یه همچین توابعی داره که من استفادش کنم🤗

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام