Bản sao Danh sách Python ()

Phương thức copy () trả về một bản sao ngắn của danh sách.

Một danh sách có thể được sao chép bằng =toán tử. Ví dụ,

 old_list = (1, 2, 3) new_list = old_list

Vấn đề với việc sao chép danh sách theo cách này là nếu bạn sửa đổi new_list, old_list cũng được sửa đổi. Đó là do danh sách mới đang tham chiếu hoặc trỏ đến cùng một đối tượng old_list.

 old_list = (1, 2, 3) new_list = old_list # add an element to list new_list.append('a') print('New List:', new_list) print('Old List:', old_list)

Đầu ra

 Danh sách cũ: (1, 2, 3, 'a') Danh sách mới: (1, 2, 3, 'a')

Tuy nhiên, nếu bạn cần danh sách ban đầu không thay đổi khi danh sách mới được sửa đổi, bạn có thể sử dụng copy()phương pháp này.
Hướng dẫn liên quan: Python Shallow Copy Vs Deep Copy

Cú pháp của copy()phương thức là:

 new_list = list.copy ()

tham số copy ()

Các copy()phương pháp không mất bất kỳ thông số.

Giá trị trả lại từ bản sao ()

Các copy()phương thức trả về một danh sách mới. Nó không sửa đổi danh sách ban đầu.

Ví dụ 1: Sao chép một danh sách

 # mixed list my_list = ('cat', 0, 6.7) # copying a list new_list = my_list.copy() print('Copied List:', new_list)

Đầu ra

 Danh sách đã sao chép: ('cat', 0, 6.7)

Nếu bạn sửa đổi new_list trong ví dụ trên, my_list sẽ không được sửa đổi.

Ví dụ 2: Sao chép danh sách bằng cú pháp cắt

 # shallow copy using the slicing syntax # mixed list list = ('cat', 0, 6.7) # copying a list using slicing new_list = list(:) # Adding an element to the new list new_list.append('dog') # Printing new and old list print('Old List:', list) print('New List:', new_list)

Đầu ra

 Danh sách cũ: ('cat', 0, 6.7) Danh sách mới: ('cat', 0, 6.7, 'dog')

thú vị bài viết...