Trong blog này, chúng ta sẽ tìm hiểu về một phương thức mới trong Python - copy list. Trong khi viết mã, có những lúc người dùng cần sử dụng lại một đối tượng. Gõ lại từng dòng mã có vẻ vô dụng. Do đó, chúng tôi sử dụng phương pháp sao chép có sẵn trong danh sách
Mục lục
- Giới thiệu về danh sách sao chép
- Phương pháp danh sách sao chép Python
- Sao chép danh sách bằng cách sử dụng =
- Sử dụng phương thức tích hợp list() để sao chép danh sách
- Bớt tư tưởng
Giới thiệu về danh sách sao chép
Nghe thì dễ, sao chép một danh sách trong Python khá đơn giản. Nhưng chúng ta vẫn phải tuân theo cú pháp và biết khi nào và làm thế nào để sử dụng phương pháp sao chép danh sách. Phương pháp này giúp dễ dàng viết các phần mã xảy ra nhiều lần.Nói rõ hơn, phương pháp này chỉ hoạt động trên danh sách.
Phương pháp danh sách sao chép Python
Phương thức copy() của Python sao chép danh sách và trả về danh sách đã sao chép. Nó không nhận bất kỳ tham số nào và trả về một bản sao nông của danh sách.
Bản sao nông là bản không hiển thị bất kỳ sửa đổi nào trong danh sách gốc. Danh sách được sao chép trỏ đến một vị trí bộ nhớ khác với danh sách ban đầu, vì vậy việc thay đổi một danh sách không ảnh hưởng đến danh sách khác.
cú pháp
list_new = list.copy()Đầu vào.
#Defining a list list = [a,b,c] #Copying list list_new = list.copy() print ("This is the new list: " + str(list_new)) list_new.append(d) print ("The new list after adding a new element: " + str(list_new)) print ("The old list after adding a new element" + str(list))Ở đây, chúng ta đã tạo danh sách rồi sao chép danh sách. Khi bạn thêm một phần tử vào danh sách mới, bạn có thể thấy rằng danh sách cũ không hiển thị sửa đổi.
đầu ra
This is the new list: [a,b,c] The new list after adding a new element: [a,b,c,d] The old list after adding a new element: [a,b,c]Sao chép danh sách bằng cách sử dụng =
Chúng ta có thể sử dụng toán tử = để sao chép danh sách. Hạn chế duy nhất của phương pháp này là nó không tạo ra một bản sao nông.
Điều đó nói rằng, nếu chúng tôi thực hiện bất kỳ sửa đổi nào đối với danh sách mới, danh sách cũ cũng sẽ được sửa đổi.
Đầu vào
#Defining a list list = [a,b,c] #Copying list list_new = list print ("This is the new list: " + str(list_new)) list_new.append(d) print ("The new list after adding a new element: " + str(list_new)) print ("The old list after adding a new element" + str(list))Ở đây, chúng ta đã tạo danh sách rồi sao chép danh sách. Khi bạn thêm một phần tử vào danh sách mới, bạn có thể thấy rằng danh sách cũ cũng được sửa đổi vì phương pháp này không tạo bản sao nông.
đầu ra
This is the new list: [a,b,c] The new list after adding a new element: [a,b,c,d] The old list after adding a new element: [a,b,c,d]Sử dụng phương thức tích hợp list() để sao chép danh sách
Một cách khác để sao chép danh sách trong Python là sử dụng phương thức tích hợp sẵn list(). Nó cũng tạo ra một bản sao nông, nghĩa là bất cứ khi nào một sửa đổi được thực hiện trong danh sách mới, nó sẽ không hiển thị trên danh sách cũ
Đầu vào
#Defining a list list = [a,b,c] #Copying list list_new = list(list) print ("This is the new list: " + str(list_new)) list_new.append(d) print ("The new list after adding a new element: " + str(list_new)) print ("The old list after adding a new element" + str(list)Ở đây, chúng ta đã tạo danh sách rồi sao chép danh sách. Khi bạn thêm một phần tử vào danh sách mới, bạn có thể thấy rằng danh sách cũ không hiển thị sửa đổi.
đầu ra
This is the new list: [a,b,c] The new list after adding a new element: [a,b,c,d] The old list after adding a new element: [a,b,c]Bớt tư tưởng
Sao chép danh sách là một cách dễ dàng để sao chép trong Python. Đó là một phương thức tích hợp giúp viết mã dễ dàng hơn. Bạn có thể sử dụng các phương pháp khác được đề cập ở trên nhưng hãy chắc chắn rằng bạn biết về bản sao nông. Mọi người có thể đọc thêm về các khái niệm Python tại đây
Indhumathy Chelliah
Theo
27 Tháng Bảy, 2020
·
5 phút đọc
·
Chỉ dành cho thành viên
Sao chép nông so với Sao chép sâu so với Chuyển nhượng trong Python
Tổng quan nhanh về sao chép nông, sao chép sâu và gán trong python
Ảnh của Daniel Öberg trên Bapt
Sao chép các đối tượng có thể được thực hiện theo ba cách trong Python
- Thao tác gán
a=b - Bản sao nông
bản sao()
a=copy(b) - bản sao sâu
a=deepcopy(b)