Hướng dẫn how do you flatten a shallow list in python? - làm thế nào để bạn làm phẳng một danh sách nông trong python?

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:49 (UTC/GMT +8 giờ)

Danh sách Python: Tập thể dục - 23 với giải pháp

Viết một chương trình Python để làm phẳng một danh sách nông.

Ví dụ 1 :

Hướng dẫn how do you flatten a shallow list in python? - làm thế nào để bạn làm phẳng một danh sách nông trong python?

Ví dụ - 2:

Hướng dẫn how do you flatten a shallow list in python? - làm thế nào để bạn làm phẳng một danh sách nông trong python?

Ví dụ - 3:

Hướng dẫn how do you flatten a shallow list in python? - làm thế nào để bạn làm phẳng một danh sách nông trong python?

Giải pháp mẫu-1:

Mã Python:

import itertools
original_list = [[2,4,3],[1,5,6], [9], [7,9,0]]
new_merged_list = list(itertools.chain(*original_list))
print(new_merged_list)

Đầu ra mẫu:

[2, 4, 3, 1, 5, 6, 9, 7, 9, 0] 

Trực quan hóa thực thi mã Python:

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:

Giải pháp mẫu-2:

Sử dụng danh sách hiểu để trích xuất từng giá trị từ danh sách phụ theo thứ tự.

Mã Python:

def flatten(nums):
  return [x for y in nums for x in y]
nums = [[1, 2, 3, 4], [5, 6, 7, 8]]
print("Original list elements:")
print(nums) 
print("\nFlatten the said list:")
print(flatten(nums))
nums = [[2,4,3],[1,5,6], [9], [7,9,0]]
print("\nOriginal list elements:")
print(nums) 
print("\nFlatten the said list:")
print(flatten(nums))

Đầu ra mẫu:

Original list elements:
[[1, 2, 3, 4], [5, 6, 7, 8]]

Flatten the said list:
[1, 2, 3, 4, 5, 6, 7, 8]

Original list elements:
[[2, 4, 3], [1, 5, 6], [9], [7, 9, 0]]

Flatten the said list:
[2, 4, 3, 1, 5, 6, 9, 7, 9, 0]

Flowchart:

Hướng dẫn how do you flatten a shallow list in python? - làm thế nào để bạn làm phẳng một danh sách nông trong python?

Trực quan hóa thực thi mã Python:

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:

Giải pháp mẫu-2:

Sử dụng danh sách hiểu để trích xuất từng giá trị từ danh sách phụ theo thứ tự.

Trình chỉnh sửa mã Python: Write a Python program to find the index of an item in a specified list.
Next: Write a Python program to append a list to the second list.

Trang chủ »Python» Chương trình Python

Tìm hiểu về việc làm phẳng một danh sách nông trong Python. Gửi bởi Nijakat Khan, vào ngày 15 tháng 7 năm 2022
Submitted by Nijakat Khan, on July 15, 2022

Ở đây nhiệm vụ là làm phẳng một danh sách.

Assume input is 
[[2, 3, 4], [3, 2, 4], [5, 8]]

We have to convert it in a single list

Output is
[2, 3, 4, 3, 2, 4, 5, 8]

Để làm phẳng danh sách nông, chúng ta có thể sử dụng các phương pháp sau,, we can use the following methods,

Phương pháp 1: Bằng cách sử dụng vòng lặp for

Trong Python, vòng lặp For được sử dụng để lặp lại chuỗi các yếu tố (danh sách, tuple, từ điển, v.v.). Ở đây chúng ta cũng có thể xác định phạm vi trong vòng lặp cú pháp của nó khác với vòng lặp của ngôn ngữ lập trình C nhưng có thể nói rằng nó giống như cho mỗi vòng lặp.

Syntax:

 for variable in sequence:
    # Loop operations

Ví dụ 1:

# list 
city_list=[["Gwalior","Bhopal"], ["Delhi","Indore"], ["Noida"]]
new_city_list= []

# We are applying here nested for loop
for x in city_list:
    for y in x:
        new_city_list.append(y)

print(new_city_list)

Output:

['Gwalior', 'Bhopal', 'Delhi', 'Indore', 'Noida']

Phương pháp 2: Bằng cách sử dụng phương thức chuỗi ()

Phương thức chuỗi () là một phương thức Python lấy chuỗi và trả về từng cái một và sau đó nhóm tất cả các phần tử và chuyển đổi nó thành một biến duy nhất.chain() method is a Python method that takes the sequence and returns one by one and then groups all the elements and converts it into a single variable.

Để sử dụng chuỗi (), chúng tôi phải nhập mô -đun "itertools".chain() we have to import the "itertools" module.

Syntax:

chain(* list)

Ví dụ 2:

from itertools import chain

city_list=[["Gwalior","Bhopal"], ["Delhi","Indore"], ["Noida"]]

new_list=(list(chain(*city_list)))

print(new_list)

Output:

['Gwalior', 'Bhopal', 'Delhi', 'Indore', 'Noida']

Phương pháp 3: Bằng cách tham gia danh sách danh sách

Chúng tôi cũng có thể tham gia danh sách các danh sách bằng cách sử dụng một chức năng và trong chức năng, chúng tôi có thể sử dụng năng suất.

Function:

Chức năng là một kỹ thuật làm giảm quy mô của chương trình nếu chúng ta đang làm việc trên một dự án lớn. Chúng ta có thể gọi hàm ở bất cứ đâu mọi lúc nó cung cấp khả năng tái sử dụng mã mà chúng ta phải viết mã một lần và có thể sử dụng mã đó nhiều lần

Syntax:

[2, 4, 3, 1, 5, 6, 9, 7, 9, 0] 
1

Ở đây đối số là tùy chọn theo các yêu cầu.

Năng suất: Năng suất giống như sự trở lại trong Python. Cả hai đều được sử dụng để trả về giá trị của một hàm. Năng suất chuyển đổi hàm bình thường thành trình tạo. Nó có thể chạy nhiều lần trong khi trả về chỉ có thể chạy một lần duy nhất.: The yield is the same as the return in python. Both are used to return the value of a function. yield converts the normal function into the generator. it can run multiple times while return can run an only a single time.

Ví dụ 3:

[2, 4, 3, 1, 5, 6, 9, 7, 9, 0] 
2

Output:

[2, 4, 3, 1, 5, 6, 9, 7, 9, 0] 
3

Các chương trình danh sách Python »