Hướng dẫn split a list into multiple lists python - chia một danh sách thành nhiều danh sách python
Điều này tương đương với câu trả lời được chấp nhận. Ví dụ: rút ngắn theo lô 10 cho khả năng đọc: Show
Outputs: Vấn đề phân chia một danh sách thành những người phụ khá chung chung nhưng để phân chia theo trình phụ có độ dài đã cho là không quá phổ biến. Đưa ra một danh sách các danh sách và danh sách độ dài, nhiệm vụ là chia danh sách thành những người con có độ dài nhất định. Ví dụ: & nbsp;Example: Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]] & nbsp; Phương pháp số 1: Sử dụng Islice để chia danh sách thành những người con có độ dài nhất định, là cách thanh lịch nhất. & NBSP;Method #1: Using islice to split a list into sublists of given length, is the most elegant way. Python3 2 3 4 5 67 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]46 69Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]48 7 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]6 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]51 69Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]53 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]6 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]56 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]57 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]58 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]59 Các Làm thế nào để bạn chia một danh sách thành hai danh sách trong Python? [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]0 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]2 0 6Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]9 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]0 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]8 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]9 Điều này có thể được thực hiện bằng các bước sau:. Output: Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]] Nhận độ dài của một danh sách bằng hàm Len () ..Method #2: Using zip is another way to split a list into sublists of given length. Python3Nếu độ dài của các bộ phận không được đưa ra, thì hãy chia độ dài của danh sách cho 2 bằng toán tử sàn để lấy chỉ số giữa của danh sách .. Cắt danh sách thành hai nửa bằng cách sử dụng [: middle_index] và [middle_index:]. Bạn có thể chia một danh sách các danh sách trong Python không? Để phân chia các phần tử của danh sách trong Python: Sử dụng danh sách hiểu để lặp qua danh sách. Mỗi lần lặp, hãy gọi phương thức Split () để chia mỗi chuỗi. Trả về một phần của mỗi chuỗi bạn muốn giữ. Initial list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Split length list: [2, 2, 3, 3] List after splitting [[1, 2], [3, 4], [5, 6, 7], [8, 9, 10]]5 25[['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]0 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]2 0 6Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]9 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]0 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]8 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]9 [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]0 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 [1, 2, 3] [4, 5, 6] [7, 8, 9]2 [1, 2, 3] [4, 5, 6] [7, 8, 9]3 Output: Initial list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Split length list: [2, 2, 3, 3] List after splitting [[1, 2], [3, 4], [5, 6, 7], [8, 9, 10]] Độ phức tạp về thời gian: O (1)O(1) Không gian phụ trợ: O (1) O(1) Trong bài viết này, chúng tôi sẽ đề cập đến cách chúng tôi chia một danh sách thành các khối có kích thước đồng đều trong Python. Dưới đây là các phương pháp mà chúng tôi sẽ đề cập: & nbsp;
Phương pháp 1: Chia một danh sách thành các khối có kích thước n trong Python bằng cách sử dụng từ khóa năng suấtyield keywordTừ khóa năng suất cho phép một chức năng quay lại nơi nó rời đi khi nó được gọi lại. Đây là sự khác biệt quan trọng từ một chức năng thông thường. Một chức năng thông thường không thể quay trở lại nơi nó rời đi. Từ khóa năng suất giúp một chức năng ghi nhớ trạng thái của nó. Năng suất cho phép một chức năng đình chỉ và tiếp tục trong khi nó biến một giá trị tại thời điểm đình chỉ thực thi. & NBSP; Python3 40 7 8 43 0 45____________ 43 0____ 49 50 51 52 50 54 0 56 0 58 50
60 61 50 63 0 65Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]2 67 68 69Initial list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Split length list: [2, 2, 3, 3] List after splitting [[1, 2], [3, 4], [5, 6, 7], [8, 9, 10]]6 71Initial list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Split length list: [2, 2, 3, 3] List after splitting [[1, 2], [3, 4], [5, 6, 7], [8, 9, 10]]8 73Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 75 0 777____178Initial list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Split length list: [2, 2, 3, 3] List after splitting [[1, 2], [3, 4], [5, 6, 7], [8, 9, 10]]5 80 81 82 83 84 7 7 87 7 Initial list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Split length list: [2, 2, 3, 3] List after splitting [[1, 2], [3, 4], [5, 6, 7], [8, 9, 10]]3 90[['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]0 92Output: [['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']] Phương pháp 2: Chia một danh sách thành các khối có kích thước N trong Python bằng cách sử dụng một vòng lặpTrong ví dụ này, chúng tôi đang sử dụng một vòng lặp trong Python và Danh sách cắt sẽ giúp chúng tôi phá vỡ danh sách thành các khối. Python3 40 7 8 9 0 1 0 3__ 51 9 0Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]1 0[[1, 2, 3, 4], [5, 6, 7, 8], [9]]5 0[[1, 2, 3, 4], [5, 6, 7, 8], [9]]7 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]2 15 7 75 18 7 20 21 7 3Initial list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Split length list: [2, 2, 3, 3] List after splitting [[1, 2], [3, 4], [5, 6, 7], [8, 9, 10]]6 71Initial list is: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Split length list: [2, 2, 3, 3] List after splitting [[1, 2], [3, 4], [5, 6, 7], [8, 9, 10]]8 73 28 69 87 7 32 69[['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]0 35 82 37Output: [1, 2, 3] [4, 5, 6] [7, 8, 9] Phương pháp 2: Chia một danh sách thành các khối có kích thước n trong Python bằng cách sử dụng danh sách hiểu & nbsp; List comprehensionĐó là một cách thanh lịch để chia một danh sách thành một dòng mã để chia danh sách thành nhiều danh sách trong Python.split a list into multiple lists in Python. Python3 40 7 8 9 0 1 0 3__ 51 9 0Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]1 0[[1, 2, 3, 4], [5, 6, 7, 8], [9]]5 0[[1, 2, 3, 4], [5, 6, 7, 8], [9]]7 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]2 15 7 75 18 7 20 21 7 3Output: [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Auxiliary Space: O(1)
Python3 69 87 7 32 84 7 5 87 7 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]16 82 72___[['geeks', 'for', 'geeks', 'like', 'geeky'], ['nerdy', 'geek', 'love', 'questions', 'words'], ['life']]0 92Output: [[1, 2, 3, 4], [5, 6, 7, 8], [9]] Phương pháp 3: Chia một danh sách thành các khối có kích thước N trong Python bằng cách sử dụng NumpyỞ đây, chúng tôi đang sử dụng Numpy.Array_Split, phân chia mảng thành các khối N có kích thước bằng nhau. Python3 4 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]31 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]32 7 73Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]36 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]9 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]38 9Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]9 Output: 0Phương pháp 5: Chia một danh sách thành các khối có kích thước N trong Python bằng ItertoolTrong ví dụ này, chúng tôi sẽ sử dụng itertool để cắt từng mảng với kích thước bằng nhau. Chúng tôi đang vượt qua một tham số trong phạm vi 30 và kích thước phân chia là 5. Python3 2 3 4 5 67 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]46 69Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]48 7 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]6 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]51 69Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]53 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]6 Initial list is: [1, 2, 3, 4, 5, 6, 7] Split length list: [2, 1, 3, 1] List after splitting [[1, 2], [3], [4, 5, 6], [7]]7 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]56 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]57 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]58 Input : Input = [1, 2, 3, 4, 5, 6, 7] length_to_split = [2, 1, 3, 1] Output: [[1, 2], [3], [4, 5, 6], [7]]59 Các Output: 1Làm thế nào để bạn chia một danh sách thành hai danh sách trong Python?Điều này có thể được thực hiện bằng các bước sau:.. Nhận độ dài của một danh sách bằng hàm Len () .. Nếu độ dài của các bộ phận không được đưa ra, thì hãy chia độ dài của danh sách cho 2 bằng toán tử sàn để lấy chỉ số giữa của danh sách .. Cắt danh sách thành hai nửa bằng cách sử dụng [: middle_index] và [middle_index:]. Bạn có thể chia một danh sách các danh sách trong Python không?Để phân chia các phần tử của danh sách trong Python: Sử dụng danh sách hiểu để lặp qua danh sách. Mỗi lần lặp, hãy gọi phương thức Split () để chia mỗi chuỗi.Trả về một phần của mỗi chuỗi bạn muốn giữ.Use a list comprehension to iterate over the list. On each iteration, call the split() method to split each string. Return the part of each string you want to keep.
Làm thế nào để bạn chia một danh sách thành các danh sách nhỏ hơn trong Python?Bạn có thể sử dụng chức năng Array_Split của Numpy, ví dụ: NP.Array_Split (np. Array (dữ liệu), 20) để chia thành 20 khối kích thước gần như bằng nhau.use numpy's array_split function e.g., np. array_split(np. array(data), 20) to split into 20 nearly equal size chunks.
Làm thế nào để bạn phân tách một danh sách từ một danh sách trong Python?Để chia một danh sách các số cho một danh sách khác: Sử dụng hàm zip để có được một bộ dữ liệu có thể lặp lại với các mục tương ứng. Sử dụng danh sách hiểu để lặp lại trên đó.Use the zip function to get an iterable of tuples with the corresponding items. Use a list comprehension to iterate over the iterable. On each iteration, divide the values in the current tuple. |