Đừng sợ tên- danh sách của danh sách. Nó chẳng là gì ngoài một danh sách với các danh sách khác là một phần tử. Trong hướng dẫn này, chúng ta sẽ tìm hiểu về các cách khác nhau để tạo danh sách danh sách trong Python
Mục lục
- Danh sách các danh sách là gì?
- Sử dụng hàm append[] để tạo list list trong Python
- Tạo danh sách các danh sách bằng trình khởi tạo danh sách trong Python
- Sử dụng khả năng hiểu danh sách để tạo danh sách danh sách
- Sử dụng vòng lặp for để tạo danh sách danh sách trong Python
- Bớt tư tưởng
Danh sách các danh sách là gì?
Trong bất kỳ ngôn ngữ lập trình nào, danh sách được sử dụng để lưu trữ nhiều mục trong một biến. Trong Python, chúng ta có thể tạo một danh sách bằng cách bao quanh tất cả các phần tử bằng dấu ngoặc vuông [] và mỗi phần tử được phân tách bằng dấu phẩy. Nó có thể được sử dụng để lưu trữ số nguyên, số float, chuỗi, v.v.
Python cung cấp tùy chọn tạo danh sách trong danh sách. Nói một cách đơn giản, nó là một danh sách lồng nhau nhưng có một hoặc nhiều danh sách bên trong như một phần tử.
Đây là một ví dụ về danh sách các danh sách để làm cho mọi thứ rõ ràng hơn.
[[a,b],[c,d],[e,f]]
Ở đây, [a,b], [c,d] và [e,f] là các danh sách riêng biệt được chuyển thành phần tử để tạo danh sách mới. Đây là một danh sách các danh sách
Bây giờ chúng ta sẽ thảo luận về các cách khác nhau để tạo danh sách danh sách trong Python
Sử dụng hàm append[] để tạo list list trong Python
Chức năng append[] thực hiện là nó kết hợp tất cả các danh sách dưới dạng phần tử thành một danh sách. Nó thêm một danh sách vào cuối danh sách.Để hiểu đầy đủ về cách thức hoạt động của các hàm này, chúng ta sẽ tạo hai danh sách và sau đó sử dụng hàm append[] để kết hợp chúng thành một danh sách
Đầu vào
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
đầu ra
[[a,b,c],[d,e,f]]
Tạo danh sách các danh sách bằng trình khởi tạo danh sách trong Python
Sử dụng trình khởi tạo danh sách, chúng tôi coi danh sách là phần tử. Chúng tôi tạo một danh sách các danh sách bằng cách chuyển danh sách dưới dạng phần tử. Đây là cách dễ nhất để tạo một danh sách các danh sách
Đầu vào
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create List of lists
list = [list1, list2]
# Display result
print[list]
đầu ra
[[a,b,c],[d,e,f]]
Sử dụng khả năng hiểu danh sách để tạo danh sách các danh sách trong Python
Hiểu danh sách là một phương pháp hơi phức tạp nhưng ngắn gọn để tạo danh sách các danh sách trong Python
Đầu vào
list_1 = [a,b,c]
list = [l1 for i in range[3]]
print[list]
đầu ra
[[a,b,c],[a,b,c],[a,b,c]]
Sử dụng vòng lặp for để tạo danh sách các danh sách trong Python
Bạn cũng có thể sử dụng vòng lặp for để tạo một danh sách các danh sách. Đây là một đoạn mã để hiểu rõ hơn
Đầu vào
list = []
# Create List of list
for i in range[2]:
list.append[[]]
for j in range[3]:
list[i].append[j]
print[lst]
đầu ra
[[a,b,c],[a,b,c]]
Kết thúc suy nghĩ
Danh sách các danh sách là một danh sách trong đó mỗi phần tử là một danh sách. List là một trong 4 kiểu dữ liệu có sẵn trong Python. Mọi người có thể tìm hiểu thêm về các kiểu dữ liệu Python khác tại đây
Làm phẳng danh sách các danh sách trong Python đang chuyển đổi danh sách lồng nhau thành danh sách đơn bình thường. Nó có nghĩa là quá trình chuyển đổi danh sách 2D thành danh sách 1D. Ví dụ: chuyển đổi [[1, 2, 3], [‘a’, ‘b’, ‘c’], [1. 1, 3. 0, 7. 4], [True, False]] thành [1, 2, 3, ’a’, ’b’, ’c’, 1. 1, 3. 0, 7. 4, Đúng, Sai].Thực hiện ví dụ dưới đây
Danh sách là một trong những cấu trúc dữ liệu linh hoạt nhất trong Python. Người ta có thể tạo các đối tượng danh sách đơn hoặc nhiều đối tượng danh sách hoặc các đối tượng danh sách lồng nhau có nghĩa là danh sách 2-D có nghĩa là danh sách bên trong danh sách trong chương trình của họ. Tạo một danh sách lồng nhau rất dễ dàng, nhưng khi một lập trình viên muốn tất cả các danh sách bên trong một danh sách cùng nhau dưới dạng một danh sách duy nhất, họ cần làm phẳng nó
Có nhiều cách để thực hiện thao tác làm phẳng này. Chúng tôi sẽ thảo luận về một số trong số họ trong hướng dẫn này
- Danh sách hiểu
- Sử dụng hàm sum[]
- Với toán tử +=
- hàm chain[]
- Funcools – Giảm thao tác
- Vòng lặp lồng nhau – cách tiếp cận lặp đi lặp lại
- Numpy – Nối và phẳng
- Lambda
Mục lục
Danh sách hiểu
Làm phẳng danh sách các danh sách thành một danh sách thông thường ta có thể sử dụng phương pháp hiểu danh sách. Giống như bên dưới
Mã ví dụ
if __name__ == '__main__':
lists = [[1, 2, 3], [True, False], [6.1, 7.3, 8.0], ['a', 'b', 'c']]
joinedlist = []
[joinedlist.extend[list] for list in lists]
print[joinedlist]
Hoặc
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
0đầu ra
Sử dụng hàm sum[]
Hàm sum[] sẽ thêm các phần tử danh sách bên trong danh sách và trả về một danh sách duy nhất. Để chuyển danh sách các danh sách thành danh sách đơn, ta sẽ cộng danh sách lồng vào danh sách rỗng để được danh sách thông thường
Mã ví dụ
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
1đầu ra
Với += Toán Tử
Trong phần này, chúng ta sẽ sử dụng vòng lặp for để thêm từng phần tử của danh sách lồng nhau vào danh sách trống bằng toán tử +=
Mã ví dụ
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
2đầu ra
itertools. hàm chain[]
Chúng tôi sẽ sử dụng itertools. chain[] Hàm làm phẳng các danh sách thành một danh sách duy nhất bằng cách lặp lại các mục danh sách
Mã ví dụ
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
3đầu ra
Funcools – Giảm thao tác
Ở đây, nó thêm các phần tử của danh sách ban đầu bằng cách giảm hoạt động của mô-đun funcools thành danh sách phẳng
Mã ví dụ
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
4đầu ra
Vòng lặp lồng nhau
Sử dụng các vòng lặp lồng nhau, chúng ta có thể nối tất cả các phần tử của danh sách lồng vào trong một danh sách mới. Bằng cách này, chúng ta có thể làm phẳng danh sách các danh sách
Mã ví dụ
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
5đầu ra
Mô-đun Numpy – Nối và phẳng
Thư viện Numpy có nhiều thao tác, một trong số đó là nối. Hoạt động này có thể được sử dụng để làm phẳng danh sách
Mã ví dụ
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
6đầu ra
Lambda
Từ khóa lambda được sử dụng để xác định chức năng ẩn danh. Một danh sách sẽ chuyển thành đối số trong hàm và hàm lambda sẽ chuyển đổi chúng từ 2D sang 1D hoặc danh sách gốc thành danh sách phẳng
Mã ví dụ
# Create 2 independent lists
list_1 = [a,b,c]
list_2 = [d,e,f]
# Create an empty list
list = []
# Create List of lists
list.append[list_1]
list.append[list_2]
print [list]
7đầu ra
Phần kết luận
Để kết luận, chúng tôi đã thảo luận về cách làm phẳng danh sách các danh sách trong Python. Chúng tôi đã xem quy trình sử dụng tám cách khác nhau với các ví dụ viết mã hoặc chương trình Python của họ để hiểu rõ hơn về quy trình