Computer >> Máy Tính >  >> Lập trình >> Python

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

Bạn có thể sao chép danh sách bằng Python bằng cách sử dụng phương thức copy (), phương thức cắt, phương thức list () và khả năng hiểu danh sách. Phương thức copy () là cách trực tiếp nhất để sao chép danh sách Python.

Khi làm việc với một danh sách bằng Python, bạn có thể gặp phải trường hợp muốn tạo một bản sao của danh sách đó.

Ví dụ:bạn có thể đang tạo một chương trình, sử dụng danh sách học sinh của năm ngoái, tạo một danh sách cập nhật cho năm học mới. Chương trình này nên giữ nguyên danh sách lớp cũ.

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

Có bốn phương pháp bạn có thể sử dụng để sao chép danh sách bằng Python:

  • Sử dụng cú pháp cắt lát
  • Sử dụng phương thức copy ()
  • Sử dụng phương thức list ()
  • Khai báo toàn bộ danh sách

Hướng dẫn này sẽ thảo luận, sử dụng các ví dụ, cách sử dụng copy () , cắt lát , hiểu danh sách danh sách () để tạo bản sao của danh sách bằng Python.

Bạn có thể sử dụng dấu bằng để tạo bản sao của danh sách. Tuy nhiên, danh sách mới sẽ được liên kết với danh sách cũ. Điều này có nghĩa là nếu bạn thay đổi danh sách mới, danh sách cũ cũng sẽ được thay đổi. Danh sách mới đề cập đến cùng một đối tượng với danh sách cũ.

Sao chép danh sách Phương thức Python:copy ()

Phương thức copy () trong Python tạo một bản sao của một danh sách hiện có. Phương thức copy () được thêm vào cuối đối tượng danh sách và do đó nó không chấp nhận bất kỳ tham số nào. copy () trả về một danh sách mới.

Python bao gồm một hàm tích hợp để hỗ trợ tạo bản sao nông của danh sách: copy () . Bạn có thể sử dụng copy () phương pháp sao chép danh sách và giữ nguyên danh sách ban đầu.

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia chương trình đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

Bản sao () phương thức không có tham số. Bạn thêm nó vào cuối tên danh sách. Đây là cú pháp để tạo một đối tượng mới Python copy () phương pháp:

new_list = old_list.copy()

Ví dụ về phương thức copy () trong Python

Hãy xem qua một ví dụ để chỉ ra cách bạn có thể sử dụng copy () phương pháp. Giả sử rằng chúng tôi điều hành một quầy trái cây và đang tìm cách cập nhật danh sách sản phẩm của mình để phản ánh các loại trái cây mới trong mùa cho mùa hè.

Để làm như vậy, chúng tôi muốn tạo một danh sách sản phẩm mới dựa trên danh sách cũ. Chúng tôi muốn lưu cái cũ của mình để sử dụng sau này. Điều này sẽ cho phép chúng tôi theo dõi những sản phẩm chúng tôi đã bán trong mùa trước trong danh sách cũ. Chúng tôi cũng sẽ có thể theo dõi những gì chúng tôi đang bán trong mùa này trong một danh sách mới.

Chúng tôi có thể sử dụng copy () để sao chép một danh sách và hoàn thành nhiệm vụ này. Dưới đây là một ví dụ về việc sử dụng copy () để tạo bản sao danh sách cung cấp sản phẩm trái cây của chúng tôi:

spring_fruits = ['Apricot', 'Avocado', 'Kiwi', 'Grapefruit', 'Cherry', 'Strawberry']

summer_fruits = spring_fruits.copy()

print(summer_fruits)

Đây là kết quả của chương trình của chúng tôi:

['Apricot', 'Avocado', 'Kiwi', 'Grapefruit', 'Cherry', 'Strawberry']

Trên dòng đầu tiên của mã của chúng tôi, chúng tôi xác định một biến Python có tên là spring_fruits . Biến này theo dõi các loại trái cây mà chúng tôi đã bán vào mùa xuân.

Sau đó, chúng tôi sử dụng copy () để tạo một danh sách mới có tên là summer_fruits chứa tất cả các mục trong spring_fruits mảng. Cuối cùng, chúng tôi in summer_fruits mảng vào bảng điều khiển. Như bạn có thể thấy, summer_fruits của chúng tôi danh sách chứa các giá trị giống như danh sách ban đầu của chúng tôi — the spring_fruits danh sách.

Bây giờ chúng tôi đã có một bản sao của danh sách của mình, chúng tôi có thể sửa đổi nó để phản ánh các dịch vụ trái cây mới của chúng tôi. Chúng tôi có thể làm như vậy bằng cách sử dụng append () remove () các phương pháp.

Sao chép danh sách Python:Slicing

Slicing là một kỹ thuật trong Python mà bạn có thể sử dụng để lấy các mục từ danh sách. Sử dụng kỹ thuật cắt, bạn có thể truy xuất các mục riêng lẻ, nhiều mục hoặc tất cả các mục được lưu trữ trong một danh sách. Nếu bạn muốn tìm hiểu thêm về cách cắt, hãy đọc hướng dẫn của chúng tôi về các phương pháp danh sách Python.

Hãy sử dụng ví dụ ở trên để chỉ ra cách chúng ta có thể sử dụng tính năng cắt để sao chép danh sách. Giả sử rằng chúng tôi đang điều hành một quầy bán trái cây. Chúng tôi muốn tạo một danh sách mới cho các sản phẩm mùa hè chứa tất cả các sản phẩm mùa xuân mà chúng tôi đã bán. Chúng tôi có thể làm như vậy bằng cách sử dụng nhân bản lát cắt.

Đây là mã chúng tôi sẽ sử dụng để tạo bản sao danh sách của mình bằng cách sử dụng nhân bản phần:

spring_fruits = ['Apricot', 'Avocado', 'Kiwi', 'Grapefruit', 'Cherry', 'Strawberry']

summer_fruits = spring_fruits[:]

print(summer_fruits)

Mã của chúng tôi trả về:

['Apricot', 'Avocado', 'Kiwi', 'Grapefruit', 'Cherry', 'Strawberry']

Mã của chúng tôi tương tự như ví dụ chúng tôi đã sử dụng ở trên để chứng minh copy () phương pháp. Sự khác biệt là ở chỗ, thay vì sử dụng copy () , chúng tôi sử dụng ký hiệu sao chép của Python.

Ký hiệu sao chép là dấu hai chấm nằm trong dấu ngoặc vuông ([:]), như bạn có thể thấy trong ví dụ trên. Phương pháp này tạo một bản sao của danh sách cũ.

Danh sách sao chép Python:phương thức list ()

Bạn cũng có thể sử dụng danh sách () chức năng tạo một bản sao của một danh sách bằng Python. Danh sách () phương thức sao chép nhận vào một tham số:(các) đối tượng bạn muốn chuyển đổi thành danh sách. Đây là cú pháp cho list () phương pháp:

list(list_name)

Hãy sử dụng ví dụ về quầy trái cây của chúng tôi để minh họa phương pháp này trong thực tế. Đây là một ví dụ về việc sử dụng list () để tạo danh sách trái cây mùa hè dựa trên danh sách trái cây mùa xuân của chúng tôi:

spring_fruits = ['Apricot', 'Avocado', 'Kiwi', 'Grapefruit', 'Cherry', 'Strawberry']

summer_fruits = list(spring_fruits)

print(summer_fruits)

Mã của chúng tôi trả về danh sách mới sau:

['Apricot', 'Avocado', 'Kiwi', 'Grapefruit', 'Cherry', 'Strawberry']

Như bạn có thể thấy, chỉ định danh sách (spring_fruits) đến summer_fruits trong mã của chúng tôi đã tạo một bản sao của spring_fruits liệt kê và lưu nó thành summer_fruits . Sau đó, chúng tôi in danh sách mới của mình vào bảng điều khiển bằng cách sử dụng print () chức năng.

Danh sách sao chép trong Python:Hiểu danh sách

Bạn có thể tạo danh sách một cách ngắn gọn bằng phương pháp hiểu danh sách Python. Phương pháp này sử dụng for… in biểu thức.

Khả năng hiểu danh sách hoạt động bằng cách lặp lại tất cả các mục trong danh sách hiện có bằng cách sử dụng for lặp lại và điền vào một danh sách mới với các mục đó.

Đây là cú pháp để hiểu danh sách trong Python:

new_list = [i for i in old_list]

Chúng ta có thể sử dụng ví dụ về quầy bán trái cây của mình để minh họa phương pháp này trong thực tế. Dưới đây là một ví dụ về việc sử dụng khả năng hiểu danh sách để tạo danh sách trái cây mùa hè mới dựa trên danh sách trái cây mùa xuân của chúng tôi:

spring_fruits = ['Apricot', 'Avocado', 'Kiwi', 'Grapefruit', 'Cherry', 'Strawberry']

summer_fruits = [i for i in spring_fruits]

print(summer_fruits)

Mã của chúng tôi sử dụng khả năng hiểu danh sách để tạo một danh sách mới, được gọi là summer_fruits và trả về như sau:

['Apricot', 'Avocado', 'Kiwi', 'Grapefruit', 'Cherry', 'Strawberry']

Như bạn có thể thấy, chương trình của chúng tôi đã tạo ra một summer_fruits danh sách chứa tất cả các giá trị có trong spring_fruits ban đầu của chúng tôi danh sách.

Kết luận

Hướng dẫn này xem xét bốn cách tiếp cận mà bạn có thể sử dụng để tạo bản sao của danh sách bằng Python. Chúng tôi đã thảo luận về cách sử dụng copy () phương pháp, kỹ thuật sao chép lát cắt, list () chức năng và phương pháp hiểu danh sách.

Giờ đây, bạn đã được trang bị kiến ​​thức cần thiết để tạo bản sao của danh sách bằng Python! Nếu bạn đang tìm kiếm các tài nguyên học tập hoặc các khóa học để giúp bạn học Python, hãy xem hướng dẫn Cách học Python của chúng tôi.