Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách khai báo List (Danh sách) trong Python

Để khởi tạo danh sách trong Python, gán một danh sách với dấu ngoặc vuông, khởi tạo với hàm list(), tạo danh sách rỗng với phép nhân, hoặc dùng list comprehension (danh sách giải nén). Cách phổ biến nhất để khai báo danh sách trong Python là dùng dấu ngoặc vuông.


Danh sách (list) là một cấu trúc dữ liệu trong Python chứa một trình tự có thứ tự của không hoặc nhiều phần tử. Danh sách trong Python là có thể thay đổi (mutable), nghĩa là chúng có thể bị thay đổi. Chúng có thể chứa bất kỳ kiểu dữ liệu nào, như chuỗi (string) hoặc từ điển (dictionary).

Khi bạn bắt đầu làm việc với danh sách, bạn có thể hỏi: làm thế nào để khởi tạo danh sách trong Python? Hay nói cách khác: làm thế nào để tạo một danh sách Python?

Hướng dẫn này sẽ trả lời câu hỏi đó và phân tích các cách khởi tạo danh sách trong Python. Chúng ta sẽ đi qua cơ bản của danh sách và cách bạn có thể khởi tạo danh sách bằng ký hiệu ngoặc vuông, list(), phép nhân danh sách và list comprehension.

Ôn tập về Python List

Danh sách lưu trữ không hoặc nhiều phần tử. Mỗi phần tử trong danh sách được gọi là mục (item). Danh sách thường được gọi là mảng (array) Python.

Trong Python, các mục trong danh sách được phân cách bằng dấu phẩy, và chính danh sách được bao quanh bởi dấu ngoặc vuông. Đây là ví dụ về danh sách trong Python:

jobs = ['Software Engineer', 'Web Developer', 'Data Analyst']

Danh sách của chúng ta chứa ba giá trị: Software Engineer, Web Developer và Data Analyst. Chúng ta có thể tham chiếu danh sách của chúng ta bằng cách sử dụng biến jobs mà chúng ta đã khai báo ở trên.

Cách tạo List trong Python

Bạn có thể khởi tạo danh sách trong Python bằng dấu ngoặc vuông, phương thức list(), phép nhân danh sách và list comprehension.

Dấu ngoặc vuông cho phép bạn khởi tạo danh sách rỗng hoặc danh sách chứa một số giá trị mặc định. Phương thức list() hoạt động theo cách tương tự như dấu ngoặc vuông. Tuy nhiên, bạn phải thêm dấu ngoặc vuông và danh sách các mục bên trong phương thức list() nếu muốn thêm một số giá trị ban đầu.

Phép nhân danh sách cho phép bạn tạo danh sách mới lặp lại các phần tử từ danh sách hiện có. List comprehension cho phép bạn tạo danh sách mới từ nội dung của danh sách hiện có.

Python Tạo List: Dấu ngoặc vuông

Bạn có thể dùng dấu ngoặc vuông hoặc phương thức list() để khởi tạo danh sách rỗng trong Python. Với mục đích của hướng dẫn này, chúng ta sẽ tập trung vào cách bạn có thể dùng dấu ngoặc vuông hoặc phương thức list() để khởi tạo danh sách rỗng.

Nếu bạn muốn tạo danh sách rỗng không có giá trị, có hai cách khai báo danh sách. Thứ nhất, bạn có thể khai báo danh sách không có giá trị bằng cách chỉ định một cặp dấu ngoặc vuông không có thành phần giá trị nào. Ví dụ cú pháp này:

jobs = []
print(jobs)

Mã của chúng ta trả về: [].

Dấu ngoặc vuông không có gì bên trong đại diện cho danh sách trống.

Chúng ta có thể chỉ định một số giá trị mặc định bằng cách thêm chúng giữa dấu ngoặc vuông:

jobs = ['Software Engineer', 'Data Analyst']

Chúng ta đã khai báo một đối tượng danh sách với hai giá trị ban đầu: "Software Engineer" và "Data Analyst".

Python Tạo List: Phương thức list()

Một cách khác để tạo danh sách rỗng trong Python không có giá trị là dùng phương thức list(). Ví dụ phương thức list() trong hành động:

jobs = list()
print(list)

Mã của chúng ta trả về: [].

Cả hai cách tiếp cận đầu tiên này trả về cùng phản hồi: một danh sách rỗng. Không có tiêu chuẩn nào về khi nào nên dùng cách nào. Thông thường cách dấu ngoặc vuông trống ([]) được dùng vì nó ngắn gọn hơn.

Python Khai báo List: Phép nhân danh sách

Một cách tiếp cận để khởi tạo danh sách với nhiều giá trị là phép nhân danh sách. Cách này cho phép bạn tạo danh sách với một số lượng giá trị được định nghĩa trước.

Ví dụ, giả sử chúng ta đang tạo chương trình yêu cầu chúng ta đặt tên 10 cuốn sách yêu thích. Chúng ta muốn khởi tạo một mảng sẽ lưu trữ các cuốn sách chúng ta nhập. Chúng ta có thể làm như sau:

favorite_books = [''] * 10
print(favorite_books)

Mã của chúng ta trả về:

['', '', '', '', '', '', '', '', '', '']

Chương trình đã tạo danh sách chứa 10 giá trị.

Hãy phân tích mã. Ở dòng đầu, chúng ta dùng cú pháp phép nhân để khai báo danh sách với 10 giá trị. Giá trị dùng cho mỗi mục trong danh sách này là '', hoặc chuỗi rỗng. Sau đó, dùng hàm print() của Python để in danh sách ra bảng điều khiển.

Chúng ta có thể dùng cú pháp này để khởi tạo danh sách với bất kỳ giá trị nào chúng ta muốn. Nếu muốn danh sách bắt đầu với 10 giá trị bằng Choose a book., chúng ta có thể dùng mã sau:

favorite_books = ['Choose a book.'] * 10
print(favorite_books)

Khi thực thi mã, chúng ta tạo danh sách với 10 giá trị. Mỗi giá trị trong danh sách bằng Choose a book.. Chúng ta in danh sách ra bảng điều khiển:

['Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.']

Python Khai báo List: List Comprehension

Ở phần trên, chúng ta đã chỉ cách khởi tạo danh sách bằng phép nhân danh sách. Cách này hữu ích vì nó cho phép khởi tạo danh sách với các giá trị mặc định.

Bạn cũng có thể khởi tạo danh sách với các giá trị mặc định dùng phương thức list comprehension. List comprehension của Python là kỹ thuật cho phép bạn tạo danh sách bằng cách sử dụng một đối tượng có thể lặp (iterable) hiện có. Đối tượng có thể lặp có thể là danh sách hoặc câu lệnh range(), hoặc kiểu có thể lặp khác.

List comprehension là cách hữu ích để định nghĩa danh sách dựa trên bộ lặp vì nó thanh lịch, đơn giản và được công nhận rộng rãi.

Giả sử chúng ta muốn tạo danh sách với 10 giá trị bằng Choose a book., như ví dụ trước. Chúng ta có thể làm với list comprehension bằng mã sau:

favorite_books = ['Choose a book.' for i in range(10)]
print(favorite_books)

Mã của chúng ta trả về:

['Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.', 'Choose a book.']

Trong ví dụ trên, chúng ta dùng list comprehension để tạo danh sách. Câu lệnh list comprehension là bộ lặp for i in range(10). Bộ lặp này được dùng để tạo danh sách lặp lại giá trị Choose a book. mười lần.

Kết luận

Khởi tạo danh sách là phần cốt lõi của việc làm việc với danh sách. Hướng dẫn này đã thảo luận cách khởi tạo danh sách rỗng dùng dấu ngoặc vuông và phương thức list(). Nó cũng đã thảo luận cách dùng kỹ thuật phép nhân danh sách và list comprehension để tạo danh sách chứa một số lượng giá trị nhất định.

Bây giờ bạn đã sẵn sàng để bắt đầu khởi tạo danh sách trong Python như một chuyên gia!

Đọc hướng dẫn How to Learn Python của chúng tôi để có lời khuyên về cách học thêm về ngôn ngữ lập trình Python.