Hướng dẫn can you have nested lists in python? - bạn có thể có danh sách lồng nhau trong python không?

Danh sách là các cấu trúc dữ liệu hữu ích thường được sử dụng trong lập trình Python. Danh sách lồng nhau là một danh sách các danh sách hoặc bất kỳ danh sách nào có danh sách khác là một yếu tố (một người đăng ký phụ). Chúng có thể hữu ích nếu bạn muốn tạo một ma trận hoặc cần lưu trữ một trình phụ thuộc cùng với các loại dữ liệu khác. are useful data structures commonly used in Python programming. A nested list is a list of lists, or any list that has another list as an element (a sublist). They can be helpful if you want to create a matrix or need to store a sublist along with other data types.

Đây là cách bạn sẽ tạo danh sách ví dụ ở trên:

# creating list

nestedList = [1, 2, ['a', 1], 3]

# indexing list: the sublist has now been accessed

subList = nestedList[2]

# access the first element inside the inner list:

element = nestedList[2][0]

print("List inside the nested list: ", subList)

print("First element of the sublist: ", element)

Tạo một ma trận

Tạo một ma trận là một trong những ứng dụng hữu ích nhất của danh sách lồng nhau. Điều này được thực hiện bằng cách tạo một danh sách lồng nhau chỉ có danh sách khác có độ dài bằng nhau như các yếu tố.

Số lượng các phần tử trong danh sách lồng nhau bằng số lượng hàng của ma trận.

Độ dài của các danh sách bên trong danh sách lồng nhau bằng số lượng cột.

Do đó, mỗi phần tử của danh sách lồng nhau (ma trận) sẽ có hai chỉ số: hàng và cột.

# create matrix of size 4 x 3

matrix = [[0, 1, 2],

[3, 4, 5],

[6, 7, 8],

[9, 10, 11]]

rows = len(matrix) # no of rows is no of sublists i.e. len of list

cols = len(matrix[0]) # no of cols is len of sublist

# printing matrix

print("matrix: ")

for i in range(0, rows):

print(matrix[i])

# accessing the element on row 2 and column 1 i.e. 3

print("element on row 2 and column 1: ", matrix[1][0])

# accessing the element on row 3 and column 2 i.e. 7

print("element on row 3 and column 2: ", matrix[2][1])

THẺ LIÊN QUAN

danh sách

danh sách lồng nhau

cộng đồng

Trong hướng dẫn này, chúng tôi sẽ hiểu cách thực hiện một danh sách lồng nhau trong Python. Trước đó, chúng tôi hãy hiểu danh sách trong Python. Liệt kê trong Python là một loại dữ liệu có thể lưu trữ nhiều mục của các loại dữ liệu khác nhau vào một biến duy nhất.

Một trong những lợi thế đáng kể của việc sử dụng danh sách so với bất kỳ loại dữ liệu nào khác như Tuples hoặc String là danh sách đó là có thể thay đổi. Do đó, một mục bên trong danh sách có thể dễ dàng thay đổi hoặc thay thế bằng bất kỳ yếu tố nào khác. Sau đây là một ví dụ về một danh sách đơn giản trong Python lưu trữ danh sách các sản phẩm được hiển thị bởi bất kỳ trang web thương mại điện tử nào.

products=['books','toys','kitchenware']
print(f"Displaying products offered by our website: {products}")
print(f"Acessing 2nd product of list: {products[1]}")
Output:
Displaying products offered by our website: ['books', 'toys', 'kitchenware']
Acessing 2nd product of list: toys

Đôi khi, việc thêm nhiều người phụ hơn trong cùng một danh sách với mỗi danh sách lưu trữ các mục của các loại dữ liệu khác nhau. Trong ví dụ của chúng tôi, giả sử chúng tôi muốn lưu trữ sản phẩm cùng với số lượng đơn vị cho từng loại sản phẩm. Ngoài ra, đối với mỗi mục như sách, chúng tôi muốn tiếp tục liên kết các danh mục cho sản phẩm đó. Trong kịch bản này sử dụng danh sách thông thường sẽ không phải là một tùy chọn hợp lệ và do đó chúng tôi chuyển sang danh sách lồng nhau.

Danh sách lồng nhau trong Python

Một danh sách lồng nhau trong Python cho phép một danh sách chứa nhiều người phụ trong chính nó. Mỗi người phụ có thể có các mục của các loại dữ liệu khác nhau. Nó có thể được tạo ra bằng cách đặt những người phụ và các mục được phân tách bằng dấu phẩy với nhau. Sau đây là một ví dụ về một danh sách lồng nhau trong Python thỏa mãn các tiêu chí nêu trên.

ecommerce=[['books',['comedy','horror'],'toys','kitchenware'],[200,100,350]]
print(f"Displaying products offered by our website: {products}")
Output:
Displaying products offered by our website: [['books', ['comedy', 'horror'], 'toys', 'kitchenware'], [200, 100, 350]]

Truy cập các yếu tố của danh sách lồng nhau

Giả sử chúng tôi muốn truy cập danh mục hài từ danh mục phụ danh mục của danh sách thương mại điện tử. Nó tương tự như lập chỉ mục trong danh sách mà chỉ mục bắt đầu bằng 0 và kết thúc với độ dài của Danh sách-1. Biểu đồ sau đây giải thích toàn bộ cấu trúc của việc lập chỉ mục trong ví dụ của chúng tôi về danh sách thương mại điện tử.

Hướng dẫn can you have nested lists in python? - bạn có thể có danh sách lồng nhau trong python không?

Mã sau đây giải thích cách truy cập danh mục kinh dị từ danh mục phụ. Ở đây chúng tôi đang truy cập danh sách đầu tiên. Trong danh sách đầu tiên, chúng tôi muốn mục thứ hai một lần nữa là một người phụ. Trong danh sách phụ đó, chúng tôi muốn mục thứ hai.

ecommerce=[['books',['comedy','horror'],'toys','kitchenware'],[200,100,350]]
book_category=ecommerce[0][1][1]
print(f"Displaying second book category: {book_category}")
Output:
Displaying second book category: horror

Hiển thị các mục của danh sách lồng nhau

Giả sử chúng tôi muốn hiển thị tất cả các mục từ danh mục phụ danh mục của danh sách thương mại điện tử. Để lặp lại các yếu tố, chúng ta có thể sử dụng cho hoặc trong khi vòng lặp.

ecommerce=[['books',['comedy','horror'],'toys','clothes','kitchenware'],[200,100,350]]
index=0
for category in ecommerce[0][1]:
    print(f"Category  {index}: {category}")
    index=index+1

Output:
Category  0: comedy
Category  1: horror

Chèn một mục vào danh sách lồng nhau

Để thêm các mục vào danh sách lồng nhau, chúng ta có thể sử dụng hàm nối hoặc chèn chức năng. Hàm append () lấy phần tử hoặc danh sách làm tham số và nối nó vào cuối danh sách. Hàm chèn () có hai tham số- vị trí mà mục sẽ được chèn và phần tử hoặc danh sách sẽ được chèn. Mã sau đây giải thích việc chèn các phần tử vào danh sách bằng cách sử dụng chức năng chèn và chức năng chèn.

# create matrix of size 4 x 3

matrix = [[0, 1, 2],

[3, 4, 5],

[6, 7, 8],

[9, 10, 11]]

rows = len(matrix) # no of rows is no of sublists i.e. len of list

cols = len(matrix[0]) # no of cols is len of sublist

# printing matrix

print("matrix: ")

for i in range(0, rows):

print(matrix[i])

# accessing the element on row 2 and column 1 i.e. 3

print("element on row 2 and column 1: ", matrix[1][0])

# accessing the element on row 3 and column 2 i.e. 7

print("element on row 3 and column 2: ", matrix[2][1])

0

# create matrix of size 4 x 3

matrix = [[0, 1, 2],

[3, 4, 5],

[6, 7, 8],

[9, 10, 11]]

rows = len(matrix) # no of rows is no of sublists i.e. len of list

cols = len(matrix[0]) # no of cols is len of sublist

# printing matrix

print("matrix: ")

for i in range(0, rows):

print(matrix[i])

# accessing the element on row 2 and column 1 i.e. 3

print("element on row 2 and column 1: ", matrix[1][0])

# accessing the element on row 3 and column 2 i.e. 7

print("element on row 3 and column 2: ", matrix[2][1])

1

Trong mã trên, chúng tôi đã sử dụng chức năng chèn để thêm một loại sản phẩm có tên ‘Quần áo tại chỉ số thứ 3 của danh sách thương mại điện tử [0]. Ở đây thương mại điện tử [0] sẽ đưa ra danh sách tại vị trí chỉ mục 0 của danh sách thương mại điện tử.

Xóa các mục khỏi danh sách lồng nhau

Để xóa các mục hoặc danh sách khỏi danh sách lồng nhau trong Python, chúng ta có thể sử dụng hàm pop () hoặc từ khóa del. Từ khóa DEL được sử dụng để xóa các đối tượng trong Python có thể bao gồm bất cứ điều gì từ các biến hoặc danh sách. Hàm pop không có tham số và chỉ cần xóa phần tử cuối cùng của danh sách lồng nhau. Trong mã được nêu dưới đây, chúng tôi đã sử dụng từ khóa DEL, mục thứ 3 xóa khỏi danh sách phụ đầu tiên của danh sách thương mại điện tử. Tương tự, chúng tôi đã sử dụng chức năng POP để xóa danh sách phụ giảm giá.

# create matrix of size 4 x 3

matrix = [[0, 1, 2],

[3, 4, 5],

[6, 7, 8],

[9, 10, 11]]

rows = len(matrix) # no of rows is no of sublists i.e. len of list

cols = len(matrix[0]) # no of cols is len of sublist

# printing matrix

print("matrix: ")

for i in range(0, rows):

print(matrix[i])

# accessing the element on row 2 and column 1 i.e. 3

print("element on row 2 and column 1: ", matrix[1][0])

# accessing the element on row 3 and column 2 i.e. 7

print("element on row 3 and column 2: ", matrix[2][1])

2

# create matrix of size 4 x 3

matrix = [[0, 1, 2],

[3, 4, 5],

[6, 7, 8],

[9, 10, 11]]

rows = len(matrix) # no of rows is no of sublists i.e. len of list

cols = len(matrix[0]) # no of cols is len of sublist

# printing matrix

print("matrix: ")

for i in range(0, rows):

print(matrix[i])

# accessing the element on row 2 and column 1 i.e. 3

print("element on row 2 and column 1: ", matrix[1][0])

# accessing the element on row 3 and column 2 i.e. 7

print("element on row 3 and column 2: ", matrix[2][1])

3

Danh sách lồng phẳng trong Python

Làm phẳng một danh sách lồng nhau đang chuyển đổi nó thành một danh sách đồng phục duy nhất. Các phương pháp khác nhau có thể được sử dụng để làm phẳng một danh sách lồng nhau trong Python. Trong mã được đề cập dưới đây, tôi đã sử dụng chiến lược hiểu danh sách để làm phẳng danh sách lồng nhau. Vòng lặp cho mỗi mục của từng mục và trả về mục dưới dạng đầu ra trong một danh sách duy nhất.

# create matrix of size 4 x 3

matrix = [[0, 1, 2],

[3, 4, 5],

[6, 7, 8],

[9, 10, 11]]

rows = len(matrix) # no of rows is no of sublists i.e. len of list

cols = len(matrix[0]) # no of cols is len of sublist

# printing matrix

print("matrix: ")

for i in range(0, rows):

print(matrix[i])

# accessing the element on row 2 and column 1 i.e. 3

print("element on row 2 and column 1: ", matrix[1][0])

# accessing the element on row 3 and column 2 i.e. 7

print("element on row 3 and column 2: ", matrix[2][1])

4

# create matrix of size 4 x 3

matrix = [[0, 1, 2],

[3, 4, 5],

[6, 7, 8],

[9, 10, 11]]

rows = len(matrix) # no of rows is no of sublists i.e. len of list

cols = len(matrix[0]) # no of cols is len of sublist

# printing matrix

print("matrix: ")

for i in range(0, rows):

print(matrix[i])

# accessing the element on row 2 and column 1 i.e. 3

print("element on row 2 and column 1: ", matrix[1][0])

# accessing the element on row 3 and column 2 i.e. 7

print("element on row 3 and column 2: ", matrix[2][1])

5

Đây là kết thúc của hướng dẫn về cách thực hiện một danh sách lồng nhau trong Python.Bạn có thể đọc thêm về từ điển lồng nhau trong Python bằng cách sử dụng liên kết sau: Từ điển lồng nhau trong Python

Danh sách có thể được lồng nhau không?

Danh sách lồng nhau là một danh sách các danh sách hoặc bất kỳ danh sách nào có danh sách khác là một yếu tố (một người đăng ký phụ).Chúng có thể hữu ích nếu bạn muốn tạo một ma trận hoặc cần lưu trữ một trình phụ thuộc cùng với các loại dữ liệu khác.. They can be helpful if you want to create a matrix or need to store a sublist along with other data types.

Danh sách có thể được lồng trong nhau không?

Danh sách có thể được lồng trong các danh sách khác, như được hiển thị trong ví dụ sau đây chi tiết một kế hoạch giải trình tự để di dời.Trong trường hợp này, đó là một danh sách được đặt hàng bên trong một danh sách khác, mặc dù bạn có thể tổ chức bất kỳ loại danh sách nào trong bất kỳ loại nào khác (xem mục DL trong chương này để biết một lưu ý liên quan)., as shown in the following example that details a sequenced plan to relocate. In this case, it's an ordered list inside another one, though you can nest any type of list within any other type (see the dl entry in this chapter for a related note).

Bạn có thể lưu trữ danh sách trong danh sách Python không?

Vì danh sách có thể chứa bất kỳ biến Python nào, nó thậm chí có thể chứa các danh sách khác.lists can contain any Python variable, it can even contain other lists.