Hướng dẫn sao chép danh sách bằng Python. Ở đây chúng tôi thảo luận về cách sao chép danh sách trong python theo bốn cách bằng cách sử dụng các ví dụ tương ứng với giải thích mã.

Bạn đang xem : sao chép danh sách trong python

sao chép danh sách trong python

Giới thiệu về Danh sách Sao chép bằng Python

Trong python, danh sách Sao chép là một hàm được sử dụng trên danh sách chứa nhiều biến / giá trị. Hoạt động của chức năng sao chép về cơ bản là các phần tử của một danh sách đã tồn tại có thể được sao chép vào một danh sách trống mới được tạo. Chức năng sao chép này có thể đạt được bằng cách sử dụng bốn loại mẫu logic, như sử dụng toán tử gán để gán các giá trị từ danh sách hiện có sang danh sách mới, một phương pháp dành riêng cho python được gọi là bản sao cạn, Bản sao sâu để sao chép nhiều các lần xuất hiện và sao chép bằng cách sử dụng hàm tạo.

Làm cách nào để sao chép danh sách bằng Python?

Sao chép danh sách có thể được thực hiện theo bốn cách:

Bắt đầu khóa học phát triển phần mềm miễn phí của bạn

Phát triển web, ngôn ngữ lập trình, Kiểm tra phần mềm & amp; những người khác

1. Người điều hành nhiệm vụ

Mã:

  & gt; & gt; & gt; a = [2,5,4,3,6,1]
& gt; & gt; & gt; in (a)
[2, 5, 4, 3, 6, 1]
& gt; & gt; & gt; b = a
& gt; & gt; & gt; in (b)
[2, 5, 4, 3, 6, 1]
& gt; & gt; & gt; a [0] = 10
& gt; & gt; & gt; in (a)
[10, 5, 4, 3, 6, 1]
& gt; & gt; & gt; in (b)
[10, 5, 4, 3, 6, 1]
 

Đầu ra:

Sao chép danh sách bằng Python - 1

Giải thích cho đoạn mã trên: Trong ví dụ trên, chúng tôi đã tạo một danh sách và gán nó cho biến ‘a’. Bây giờ chúng ta đã gán cùng một danh sách này cho biến b. Bây giờ, nếu chúng ta in danh sách b, chúng ta nhận được các giá trị tương tự. Bây giờ chúng tôi đã thay đổi phần tử đầu tiên của danh sách ‘a’. In danh sách ‘a’ để kiểm tra các giá trị được cập nhật. Bây giờ chúng ta nếu in danh sách ‘b’, chúng ta có thể thấy rằng các giá trị của danh sách ‘b’ cũng được thay đổi. Trong trường hợp này, các giá trị không được sao chép, cả hai biến đều chỉ tham chiếu đến cùng một đối tượng.

2. Sao chép bằng hàm tạo

Bây giờ để tránh sự cố trên, chúng ta có thể sử dụng hàm tạo danh sách để sao chép danh sách.

Mã:

  & gt; & gt; & gt; a = [2,5,4,3,6,1]
& gt; & gt; & gt; in (a)
[2, 5, 4, 3, 6, 1]
& gt; & gt; & gt; b = list (a)
& gt; & gt; & gt; in (b)
[2, 5, 4, 3, 6, 1]
& gt; & gt; & gt; a [0] = 10
& gt; & gt; & gt; in (a)
[10, 5, 4, 3, 6, 1]
& gt; & gt; & gt; in (b)
 

Đầu ra:

Xem Thêm  Làm thế nào để chuyển hướng đến một trang web khác bằng JavaScript? - chuyển hướng đến một trang html khác javascript

Sao chép danh sách bằng Python - 2

Giải thích cho đoạn mã trên: Trong ví dụ trên, chúng tôi đã tạo một danh sách ‘a’ và gán danh sách đó cho danh sách ‘b’ bằng cách sử dụng hàm tạo danh sách. Nếu chúng ta thay đổi giá trị của danh sách ‘a’, thì các giá trị của danh sách ‘b’ sẽ không thay đổi; bây giờ, có thể nói danh sách đã được sao chép.

3. Bản sao nông

Bản sao nông là một toán tử gán tương tự. Nó cũng tạo một đối tượng mới đang lưu trữ tham chiếu của danh sách cũ thay vì sao chép các mục. Để sử dụng bản sao cạn, chúng tôi phải nhập mô-đun sao chép.

Mã:

  & gt; & gt; & gt; nhập bản sao
& gt; & gt; & gt; a = [[1,2,3], [4,5,6], [7,8,9]]
& gt; & gt; & gt; in (a)
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
& gt; & gt; & gt; b = copy.copy (a)
& gt; & gt; & gt; in (b)
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
& gt; & gt; & gt; a.append (['a', 'b', 'c'])
& gt; & gt; & gt; in (a)
[[1, 2, 3], [4, 5, 6], [7, 8, 9], ['a', 'b', 'c']]
& gt; & gt; & gt; in (b)
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
& gt; & gt; & gt; a [1] [2] = 10
& gt; & gt; & gt; in (a)
[[1, 2, 3], [4, 5, 10], [7, 8, 9], ['a', 'b', 'c']]
& gt; & gt; & gt; in (b)
[[1, 2, 3], [4, 5, 10], [7, 8, 9]]
 

Đầu ra:

Bản sao nông

Giải thích cho đoạn mã trên: Trong chương trình trên, bạn có thể thấy rằng chúng tôi đã tạo một danh sách lồng nhau ‘a’ và sau đó chúng tôi đã gán danh sách đó vào danh sách ‘b’ bằng cách sử dụng bản sao. Chức năng sao chép. Khi in danh sách ‘b’, chúng ta có thể thấy rằng tất cả các giá trị của ‘a’, vì nó trỏ đến tất cả các phần tử của danh sách ‘a’.

Bây giờ chúng ta đã thêm vào danh sách mới vào danh sách ‘a’. Bây giờ chúng ta in danh sách ‘b’; chúng tôi không tìm thấy danh sách mới đã được thêm vào. Đó là vì nó vẫn trỏ đến tham chiếu danh sách cũ. Nó sẽ không có bất kỳ thông tin nào về phần tử mới được thêm vào được thực hiện bởi lệnh after copy . Bây giờ, nếu chúng tôi cố gắng thay đổi phần tử danh sách cũng tồn tại trong danh sách b, bạn cũng có thể thấy sự thay đổi trong danh sách b bởi vì nó có tất cả các tham chiếu của phần tử cũ ngoại trừ phần tử đã được thêm vào sau đó.

Xem Thêm  Giải mã AI là gì và mức thu nhập hấp dẫn của AI Engineer - câu hỏi phỏng vấn sql

4. Bản sao sâu

Ngoài ra, trong bản sao sâu, chúng tôi phải nhập mô-đun sao chép để làm cho nó hoạt động. Bản sao sâu tạo ra một đối tượng mới và tiếp tục thêm một cách đệ quy các bản sao của các phần tử lồng nhau có trong danh sách cũ vào danh sách mới.

Mã:

  & gt; & gt; & gt; nhập bản sao
& gt; & gt; & gt; a = [[1,2,3], [4,5,6], [7,8,9]]
& gt; & gt; & gt; in (a)
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
& gt; & gt; & gt; b = copy.deepcopy (a)
& gt; & gt; & gt; in (b)
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
& gt; & gt; & gt; a.append (['a', 'b', 'c'])
& gt; & gt; & gt; in (a)
[[1, 2, 3], [4, 5, 6], [7, 8, 9], ['a', 'b', 'c']]
& gt; & gt; & gt; in (b)
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
& gt; & gt; & gt; a [1] [2] = 10
& gt; & gt; & gt; in (a)
[[1, 2, 3], [4, 5, 10], [7, 8, 9], ['a', 'b', 'c']]
& gt; & gt; & gt; in (b)
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
 

Đầu ra:

Bản sao sâu

Giải thích cho đoạn mã trên: Trong chương trình trên, bạn có thể thấy rằng chúng tôi đã tạo danh sách ‘a’ và sao chép danh sách ‘a’ vào danh sách ‘b’ bằng cách sử dụng bản sao. lệnh deepcopy. Bây giờ chúng ta in danh sách ‘b’; chúng ta có thể thấy rằng tất cả các phần tử của danh sách hiện đã được sao chép. Bây giờ chúng ta có thể thử thêm một danh sách mới vào danh sách ‘a’. Nếu chúng ta in danh sách ‘b’, chúng ta có thể thấy rằng các phần tử mới tồn tại. Nếu chúng ta cố gắng thay đổi phần tử tồn tại trước khi sao chép, thì phần tử đó cũng không được thay đổi trong danh sách ‘b’. Vì vậy, nếu chúng tôi thực hiện bất kỳ thay đổi nào đối với danh sách ‘a’, sẽ không có thay đổi nào được phản ánh trong danh sách ‘b’ bởi vì thay vì tham chiếu đến đối tượng, các giá trị của danh sách cũ được sao chép đệ quy vào danh sách mới và cả danh sách đều có mới. id đối tượng.

Kết luận

Các phương pháp danh sách này rất hữu ích trong python. Phương pháp nào được sử dụng tùy thuộc vào yêu cầu hoặc nhiệm vụ mà chúng tôi đang thực hiện. Giả sử chúng ta có danh sách cần được sử dụng trên toàn hệ thống, thì chúng ta có thể sử dụng bản sao cạn để một thay đổi có thể phản ánh toàn bộ hệ thống.

Xem Thêm  JavaScript JSON thành chuỗi - json dưới dạng một chuỗi

Các bài báo được đề xuất

Đây là hướng dẫn về Sao chép danh sách bằng Python. Ở đây chúng tôi thảo luận về cách sao chép danh sách trong python theo bốn cách bằng cách sử dụng các ví dụ tương ứng. Bạn cũng có thể xem qua các bài viết liên quan khác của chúng tôi để tìm hiểu thêm –

1

Chia sẻ

Chia sẻ


Xem thêm những thông tin liên quan đến chủ đề sao chép danh sách trong python

Bài 9. Kiểu danh sách – list trong Python

alt

  • Tác giả: Cô Sương
  • Ngày đăng: 2021-06-09
  • Đánh giá: 4 ⭐ ( 2676 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Bài 9. Kiểu danh sách – list trong Python
    Truy cập phần tử List
    Toán tử +, *, in
    Hàm len(), list(), max(), min(), sum()
    Phương thức append(), extend(), insert(), remove(), pop(), clear(), count(), index(), reverse(), sort(), copy()

List copy() trong Python

  • Tác giả: freetuts.net
  • Đánh giá: 4 ⭐ ( 9509 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Tìm hiểu phương thức List copy() trong Python dùng để copy một bản sao thô của list, vài ví dụ về cách sử dụng hàm list.copy() trong python tại đây

Python Sao chép một danh sách

  • Tác giả: pluginthanhtoan.com
  • Đánh giá: 3 ⭐ ( 4730 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: botvietbai.com cung cấp các hướng dẫn, tài liệu tham khảo và bài tập trực tuyến miễn phí bằng tất cả các ngôn ngữ chính của web. Bao gồm các chủ đề phổ biến như HTML, CSS, JavaScript, Python, SQL, Java, và nhiều hơn nữa.

Cách copy file trong python

  • Tác giả: laptrinhcanban.com
  • Đánh giá: 4 ⭐ ( 3846 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hướng dẫn cách copy file trong python. Bạn sẽ học được các cách sao chép file trong python như copy nội dung file, copy nội dung file kèm quyền truy cập, copy nội dung file kèm quyền truy cập

[Python] Phần 8: Danh sách (List) trong Python

  • Tác giả: www.dammio.com
  • Đánh giá: 5 ⭐ ( 8449 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Cách sắp xếp danh sách trong Python bằng cách sử dụng sort () và sorted ()

  • Tác giả: gialaipc.com.vn
  • Đánh giá: 4 ⭐ ( 7543 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [ad_1]
    Hướng dẫn Python này là một phần của hướng dẫn liên tục của chúng tôi về lập trình bằng Python. Mặc dù nó

Cách sao chép danh sách bằng Python

  • Tác giả: vn.wsxdn.com
  • Đánh giá: 5 ⭐ ( 1087 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

By ads_php