Rate this post

Thêm các item vào danh sách là một nhiệm vụ khá phổ biến trong Python, vì vậy ngôn ngữ này cung cấp một loạt các phương thức và toán tử có thể giúp bạn thực hiện thao tác này. Một trong những phương thức đó là .append(). Với .append(), bạn có thể thêm các item vào cuối đối tượng danh sách hiện có. Bạn cũng có thể sử dụng .append() trong vòng lặp for để điền danh sách theo chương trình.

Các bài viết liên quan:

Trong hướng dẫn này, bạn sẽ học cách:

  • Làm việc với .append()
  • Điền danh sách bằng cách sử dụng .append() và vòng lặp for
  • Thay thế .append() bằng cách hiểu danh sách
  • Làm việc với .append() trong array.array() và collections.deque()

Bạn cũng sẽ viết code một số ví dụ về cách sử dụng .append() trong thực tế. Với kiến thức này, bạn sẽ có thể sử dụng hiệu quả .append() trong các chương trình của mình.

Thêm các item vào danh sách bằng .append() của Python

.append() của Python lấy một đối tượng làm đối số và thêm nó vào cuối danh sách hiện có, ngay sau phần tử cuối cùng của nó:

Mỗi khi bạn gọi .append() trên một danh sách hiện có, phương thức này sẽ thêm một item mới vào cuối hoặc bên phải của danh sách. Sơ đồ sau đây minh họa quá trình:

Danh sách Python dành thêm không gian cho các item mới ở cuối danh sách. Một cuộc gọi đến .append() sẽ đặt các item mới vào không gian có sẵn.

Trong thực tế, bạn có thể sử dụng .append() để thêm bất kỳ loại đối tượng nào vào danh sách đã cho:

mixed_array = [1, 2]
mixed_array.append(3)
mixed.append("four")
mixed.append(5.0)

Danh sách là các chuỗi có thể chứa các loại dữ liệu và đối tượng Python khác nhau, vì vậy bạn có thể sử dụng .append() để thêm bất kỳ đối tượng nào vào danh sách đã cho. Trong ví dụ này, trước tiên bạn thêm một số nguyên, sau đó là một chuỗi và cuối cùng là một số dấu phẩy động. Tuy nhiên, bạn cũng có thể thêm một danh sách khác, từ điển, bộ dữ liệu, đối tượng do người dùng xác định, v.v.

Sử dụng .append() tương đương với thao tác sau:

numbers_array = [1, 2, 3]
numbers_array[len(numbers_array):] = [4]

Đoạn code trên bạn thực hiện đồng thời 2 thao tác:

  • Bạn lấy một lát từ các số bằng cách sử dụng biểu thức numbers_array[len(numbers_array):].
  • Bạn chỉ định một lần lặp cho lát cắt đó.

Thao tác slice sẽ chiếm khoảng trống sau item cuối cùng bằng số. Trong khi đó, thao tác gán các item trong danh sách ở bên phải của toán tử gán và thêm chúng vào các số. Tuy nhiên, có một sự khác biệt quan trọng giữa việc sử dụng kiểu gán này và sử dụng .append(). Với nhiệm vụ, bạn có thể thêm một số item vào cuối danh sách của mình cùng một lúc:

numbers = [1, 2, 3]
numbers[len(numbers):] = [4, 5, 6]

Trong ví dụ này, dòng được tô sáng lấy một lát từ cuối các số, giải nén các item trong danh sách ở bên phải và thêm chúng vào lát dưới dạng các item riêng lẻ.

.append() Thêm một item

Với .append(), bạn có thể thêm một số, danh sách, bộ dữ liệu, từ điển, đối tượng do người dùng xác định hoặc bất kỳ đối tượng nào khác vào danh sách hiện có. Tuy nhiên, bạn cần lưu ý rằng .append() chỉ thêm một item hoặc đối tượng tại một thời điểm:

>>> x = [1, 2, 3, 4,7]
>>> y = (5, 6,8)
>>> x.append(y)

Điều xảy ra ở đây là .append() thêm đối tượng tuple y vào cuối danh sách item tiêu của bạn, x. Điều gì sẽ xảy ra nếu bạn muốn thêm từng item trong y vào cuối x dưới dạng một item riêng lẻ và nhận được [1, 2, 3, 4, 5, 6]? Trong trường hợp đó, bạn có thể sử dụng .extend():

>>> x = [1, 2, 3, 4,6,8]
>>> y = (7,9)
>>> x.extend(y)
>>> x = [1, 2, 3, 4,9]
>>> y = (5, 6, 7,8)
>>> x[len(x):] = y

.extend() lấy một đối số có thể lặp lại làm đối số, giải nén các item của nó và thêm chúng vào cuối danh sách item tiêu của bạn. Thao tác này tương đương với x[len(x):] = y, đây là kỹ thuật tương tự mà bạn đã thấy trong phần trước.

.append() return non

Trong thực tế, .append() thực hiện công việc của nó bằng cách sửa đổi và phát triển danh sách. Điều này có nghĩa là .append() không trả về một danh sách mới với một item mới bổ sung ở cuối. Nó trả về Không có:

>>> x = [1, 2, 3, 4]
>>> y = x.append(5)
>>> y is None

Giống như với một số phương pháp tương tự, .append() thay đổi danh sách cơ bản tại chỗ. Cố gắng sử dụng giá trị trả về của .append() là một lỗi phổ biến khi tìm hiểu cách thức hoạt động của các loại trình tự có thể thay đổi. Ghi nhớ hành vi này của .append() sẽ giúp bạn ngăn ngừa lỗi trong mã của mình.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now