لیست ها - کپی در پایتون (Copy Lists)
برای کپی کردن لیست (List) در پایتون نباید از عبارت ساده list2 = list1
استفاده کنید. این کار فقط یک ارجاع ایجاد می کند و تغییرات در list1
روی list2
هم اعمال می شود.
کپی با متد copy()
روش استاندارد استفاده از متد داخلی copy()
است:
thislist = ["apple", "banana", "cherry"]
mylist = thislist.copy()
print(mylist)
کپی با تابع list()
روش دیگر استفاده از تابع داخلی list()
است:
thislist = ["apple", "banana", "cherry"]
mylist = list(thislist)
print(mylist)
کپی با عملگر Slice
می توانید با عملگر [:]
نیز لیست را کپی کنید:
thislist = ["apple", "banana", "cherry"]
mylist = thislist[:]
print(mylist)
نکته: روش های بالا کپی سطحی (Shallow Copy) ایجاد می کنند. برای لیست های تو در تو باید از کتابخانه copy
و متد deepcopy()
استفاده کنید.
ادامه یادگیری
برای یادگیری بیشتر به بخش مرتب سازی لیست ها بازگردید یا بخش اتصال لیست ها را مطالعه کنید.