Cách tìm danh sách con trong danh sách trong python

Bởi Xah Lee. Ngày tháng. 2005-01-11. Cập nhật mới nhất. 2022-08-27

Cú pháp của danh sách [Biểu thức bằng chữ để tạo danh sách]

Step 1 : given a list.
Step 2 : take one sublist which is empty initially.
Step 3 : use one for loop till length of the given list.
Step 4 : Run a loop from i+1 to length of the list to get all the sub arrays from i to its right.
Step 5 : Slice the sub array from i to j.
Step 6 : Append it to an another list to store it.
Step 7 : Print it at the end.
3

danh sách có thể có các mục thuộc các loại khác nhau

Danh sách lồng nhau

Danh sách có thể được lồng vào nhau tùy ý. Ví dụ

Step 1 : given a list.
Step 2 : take one sublist which is empty initially.
Step 3 : use one for loop till length of the given list.
Step 4 : Run a loop from i+1 to length of the list to get all the sub arrays from i to its right.
Step 5 : Slice the sub array from i to j.
Step 6 : Append it to an another list to store it.
Step 7 : Print it at the end.
4

Nối thêm dấu ngoặc để lấy mục của danh sách lồng nhau

Cho một danh sách, in tất cả các danh sách con của một danh sách

Ví dụ -

Input : list = [1, 2, 3] 
Output : [], [1], [1, 2], [1, 2, 3], [2], [2, 3], [3]]

thuật toán

Step 1 : given a list.
Step 2 : take one sublist which is empty initially.
Step 3 : use one for loop till length of the given list.
Step 4 : Run a loop from i+1 to length of the list to get all the sub arrays from i to its right.
Step 5 : Slice the sub array from i to j.
Step 6 : Append it to an another list to store it.
Step 7 : Print it at the end.

Mã ví dụ

# Python program to print all  
# sublist from a given list  
# function to generate all the sub lists 
def displaysublist[A]: 
   # store all the sublists  
   B = [[ ]] 
      
   # first loop  
   for i in range[len[A] + 1]:   
      # second loop  
      for j in range[i + 1, len[A] + 1]:         
         # slice the subarray  
         sub = A[i:j] 
         B.append[sub] 
   return B 
  
# driver code 
A=list[]
n=int[input["Enter the size of the First List ::"]]
print["Enter the Element of First List ::"]
for i in range[int[n]]:
   k=int[input[""]]
   A.append[k]
print["SUBLIST IS ::>",displaysublist[A]] 

đầu ra

Enter the size of the First List :: 3
Enter the Element of First List ::
1
2
3
SUBLIST IS ::> [[], [1], [1, 2], [1, 2, 3], [2], [2, 3], [3]]

Một danh sách có thể chứa bất kỳ đối tượng sắp xếp nào, thậm chí một danh sách khác [danh sách con], do đó có thể chứa chính danh sách con, v.v. Đây được gọi là danh sách lồng nhau

Bạn có thể sử dụng chúng để sắp xếp dữ liệu thành cấu trúc phân cấp

Tạo một danh sách lồng nhau

Danh sách lồng nhau được tạo bằng cách đặt một chuỗi danh sách con được phân tách bằng dấu phẩy

L = ['a', ['bb', ['ccc', 'ddd'], 'ee', 'ff'], 'g', 'h']

Truy cập các mục danh sách lồng nhau theo chỉ mục

Bạn có thể truy cập các mục riêng lẻ trong danh sách lồng nhau bằng nhiều chỉ mục

Các chỉ mục cho các mục trong danh sách lồng nhau được minh họa như bên dưới

L = ['a', 'b', ['cc', 'dd', ['eee', 'fff']], 'g', 'h']

print[L[2]]
# Prints ['cc', 'dd', ['eee', 'fff']]

print[L[2][2]]
# Prints ['eee', 'fff']

print[L[2][2][0]]
# Prints eee

Lập chỉ mục danh sách phủ định trong danh sách lồng nhau

Bạn cũng có thể truy cập danh sách lồng nhau bằng cách lập chỉ mục phủ định

Chỉ số phủ định đếm ngược từ cuối danh sách. Vì vậy, 

L = ['a', 'b', ['cc', 'dd', ['eee', 'fff']], 'g', 'h']

print[L[2]]
# Prints ['cc', 'dd', ['eee', 'fff']]

print[L[2][2]]
# Prints ['eee', 'fff']

print[L[2][2][0]]
# Prints eee
2 là mục cuối cùng, 
L = ['a', 'b', ['cc', 'dd', ['eee', 'fff']], 'g', 'h']

print[L[2]]
# Prints ['cc', 'dd', ['eee', 'fff']]

print[L[2][2]]
# Prints ['eee', 'fff']

print[L[2][2][0]]
# Prints eee
3 là mục cuối cùng thứ hai, v.v.

Các chỉ mục phủ định cho các mục trong danh sách lồng nhau được minh họa như bên dưới

________số 8

Thay đổi giá trị mục danh sách lồng nhau

Bạn có thể thay đổi giá trị của một mục cụ thể trong danh sách lồng nhau bằng cách tham khảo số chỉ mục của nó

L = ['a', ['bb', 'cc'], 'd']
L[1][1] = 0
print[L]
# Prints ['a', ['bb', 0], 'd']

Thêm các mục vào danh sách Lồng nhau

Để thêm các giá trị mới vào cuối danh sách lồng nhau, hãy sử dụng phương thức append[]

Step 1 : given a list.
Step 2 : take one sublist which is empty initially.
Step 3 : use one for loop till length of the given list.
Step 4 : Run a loop from i+1 to length of the list to get all the sub arrays from i to its right.
Step 5 : Slice the sub array from i to j.
Step 6 : Append it to an another list to store it.
Step 7 : Print it at the end.
0

Khi bạn muốn chèn một mục vào một vị trí cụ thể trong danh sách lồng nhau, hãy sử dụng phương thức insert[]

Step 1 : given a list.
Step 2 : take one sublist which is empty initially.
Step 3 : use one for loop till length of the given list.
Step 4 : Run a loop from i+1 to length of the list to get all the sub arrays from i to its right.
Step 5 : Slice the sub array from i to j.
Step 6 : Append it to an another list to store it.
Step 7 : Print it at the end.
1

Bạn có thể hợp nhất một danh sách vào một danh sách khác bằng cách sử dụng phương thức mở rộng[]

Step 1 : given a list.
Step 2 : take one sublist which is empty initially.
Step 3 : use one for loop till length of the given list.
Step 4 : Run a loop from i+1 to length of the list to get all the sub arrays from i to its right.
Step 5 : Slice the sub array from i to j.
Step 6 : Append it to an another list to store it.
Step 7 : Print it at the end.
2

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

Nếu bạn biết chỉ mục của mục bạn muốn, bạn có thể sử dụng phương thức pop[]. Nó sửa đổi danh sách và trả lại mục đã xóa

Chủ Đề