Cara meratakan daftar dalam python – Codewithaden

Daftar ini adalah salah satu struktur data paling fleksibel dalam Python. Mengubah daftar menjadi daftar disebut “ meratakan daftar “. Daftar Python dapat berisi beberapa dimensi. Ini berarti Anda memiliki daftar dalam daftar. Terkadang dipanggil “Daftar bersarang,” Ini dapat dikonversi kembali ke daftar reguler.

Daftar perataan Python

Ke meratakan sebuah daftar di Python , menggunakan daftar pemahaman atau mengimpor perpustakaan seperti IterTools atau Numpy . Daftar pemahaman menyajikan sintaks yang lebih pendek saat Anda perlu membuat daftar yang rata berdasarkan nilai -nilai daftar yang ada.

Ada dua jenis daftar bersarang:

  1. Daftar bersarang yang tidak teratur
  2. Daftar bersarang reguler

Setiap elemen dari daftar ini adalah seorang sublist, dengan demikian mematuhi keseragaman jenis elemen. Setiap elemen dari daftar ini adalah item sublist atau non-daftar. Oleh karena itu, ada penyimpangan dalam hal jenis elemen.

Menggunakan pemahaman daftar

Daftar Pemahaman menawarkan sintaks yang lebih pendek saat Anda ingin membuat daftar baru berdasarkan nilai -nilai yang ada daftar . Pemahaman daftar terdiri dari tanda kurung yang berisi ekspresi yang dieksekusi untuk setiap elemen dan untuk loop untuk mengulangi setiap elemen.

original_list = [[11, 21, 30], [19, 63, 71], [81, 99]]

flatten_list = [element for sublist in original_list for element in sublist]

print("Original list", original_list)

print("Flattened list", flatten_list) 

Keluaran

Original list [[11, 21, 30], [19, 63, 71], [81, 99]]

Flattened list [11, 21, 30, 19, 63, 71, 81, 99] 

Anda dapat melihat bahwa kami telah meratakan daftar.

Daftar komprehension menyediakan cara singkat untuk membuat daftar.

Ratakan daftar daftar menggunakan IterTools

Menggunakan IterTools sangat ideal untuk mengubah daftar 2D menjadi satu daftar datar. Ini karena ia memperlakukan urutan berurutan sebagai urutan tunggal dengan mengulangi melalui iterable disahkan sebagai argumen secara berurutan.

import itertools

original_list = [[11, 21, 30], [19, 63, 71], [81, 99]]

flatten_list = list(itertools.chain(*original_list))

print("Original list", original_list)

print("Flattened list", flatten_list) 

Keluaran

Original list [[11, 21, 30], [19, 63, 71], [81, 99]]

Flattened list [11, 21, 30, 19, 63, 71, 81, 99] 

Dan kami mendapat daftar yang rata di output.

Meskipun iTertools adalah cara yang efektif untuk meratakan daftar, itu lebih maju daripada pendekatan terakhir yang telah kita bahas.

Ini karena Anda harus Impor iterTools ke dalam kode Anda yang memperkenalkan ketergantungan baru. Selain itu, metode rantai () melibatkan pembongkaran yang dapat menjadi tantangan untuk dipahami.

Daftar Daftar Ratakan Menggunakan Numpy (Concatenate () dan Flat ())

Untuk meratakan daftar daftar dalam Python, gunakan fungsi Numpy Library, Concatenate (), dan Flat (). Numpy menawarkan operasi umum, termasuk menggabungkan array 2D reguler dari segi baris atau kolom-bijaksana. Kami juga menggunakan atribut datar untuk mendapatkan iterator 1D di atas array untuk mencapai tujuan kami.

import numpy as np

original_list = [[11, 21, 30], [19, 63, 71], [81, 99]]

flatten_list = list(np.concatenate(original_list). flat)

print("Original list", original_list)

print("Flattened list", flatten_list) 

Keluaran

Original list [[11, 21, 30], [19, 63, 71], [81, 99]]

Flattened list [11, 21, 30, 19, 63, 71, 81, 99] 

Itu saja untuk meratakan daftar dalam Python.

Pos terkait

Panjang daftar Python

Cara membagi daftar dalam python

Python temukan dalam daftar

Daftar Python berisi

Daftar Sortir Python secara abjad

Artikel ini berasal dari website Winpoin, dan kemudian diterjemahkan ke bahasa indonesia, baca artikel asli disini

Leave a Reply

Your email address will not be published. Required fields are marked *