Daftar Reverse Python: Panduan Lengkap – Codewithaden

Membalikkan a daftar adalah operasi standar dalam pemrograman Python. Misalnya, bayangkan Anda memiliki daftar nama karyawan yang ditampilkan kode Anda dalam urutan alfabet (A-Z). Beberapa pengguna Anda ingin melihat daftar karyawan sehingga nama -nama tersebut dalam urutan alfabet terbalik. Bagaimana Anda akan membalik urutan daftar yang ada ini di kepalanya?

Dalam artikel ini, Anda akan melihat tiga cara berbeda untuk mencapai hasil ini dalam Python “Plain Vanilla”, yang berarti tanpa menggunakan perpustakaan Python pihak ketiga:

  1. Membalikkan daftar yang ada dengan metode Python List.reverse ().
  2. Menggunakan teknik pengiris “[:::-1]” untuk membuat salinan terbalik.
  3. Membuat iterator terbalik dengan fungsi bawaan () terbalik ().

Daftar terbalik Python

Ke membalik sebuah daftar di Python , menggunakan daftar.reverse () metode. Itu membalik() adalah bawaan Python Fungsi yang membalikkan urutan penyortiran item. Fungsi Reverse () tidak mengambil parameter dan tidak mengembalikan nilai apa pun. Ini hanya membalikkan elemen dan memperbarui daftar.

Daftar membalik() membalikkan objek daftar yang ada.

Mari kita mulai dengan fungsi list.reverse () dalam python.

Sintaksis

Sintaks dari metode Python List Reverse () adalah sebagai berikut.

list.reverse() 

Contoh sederhana adalah sebagai berikut.

# app.py

GoT = ['Jon', 'Tyrion', 'Daenerys']
GoT.reverse()
print (GoT) 

Lihat outputnya.

Python

Satu hal yang perlu diingat adalah tidak melakukan pesanan naik atau turun dalam daftar.

Itu hanya membalikkan daftar terlepas dari apakah string input sudah dipesan atau tidak.

Metode Daftar Reverse () memodifikasi urutan yang ada untuk ekonomi luar angkasa saat membalikkan urutan yang luas. Jika kita ingin mengingatkan karyawan bahwa itu beroperasi secara samping, itu tidak mengembalikan urutan terbalik. (Sumber: Python 3 Docs ).

Pembalikan di tempat memiliki beberapa manfaat dan beberapa kerugian. Di sisi positifnya, ini adalah operasi yang cepat – menyentuh elemen daftar di sekitar tidak memerlukan banyak memori tambahan, karena kami tidak membuat salinan lengkap daftar.

Namun, membalikkan daftar di tempatnya menimpa urutan sortir asli. Ini bisa menjadi potensi penurunan. (Tentu saja, Anda dapat membalikkan daftar yang sama lagi untuk mengembalikan urutan aslinya.)

Dari sudut pandang keterbacaan kode, saya suka pendekatan ini.

Sintaksnya jelas dan mudah dimengerti, bahkan untuk pengembang yang baru mengenal Python atau seseorang dari latar belakang bahasa lain.

Daftar sort () dan reverse () digabungkan

Mari kita ambil skenario di mana pertama kita mengurutkan daftar berdasarkan kriteria panjang item string dan kemudian membalikkan pesanan itu dalam daftar.

# app.py

def criteria(item):
    return len(item)
GoT2 = ['Jon', 'Tyrion', 'Daenerys']
GoT2.sort(reverse=True, key=criteria)
print (GoT2)
GoT2.reverse()
print (GoT2) 

Jadi, dalam contoh di atas, kami turun daftar berdasarkan panjang item string dan kemudian membalikkan item itu pada daftar.

Jadi outputnya adalah sebagai berikut.

List

Jika Anda ingin mempelajari cara mengurutkan daftar dalam python, lihat saya daftar sort () artikel.

Mengakses elemen individu dalam urutan terbalik

Mari kita akses semua elemen dalam urutan terbalik.

# app.py

GoT1 = ['Jon', 'Tyrion', 'Daenerys']
GoT1.reverse()
for item in GoT1:
    print (item) 

Pertama, kami membalikkan pesanan daftar dan kemudian mencetak item satu per satu.

Python

Membalikkan daftar python menggunakan pengiris operator

Objek Pythpython memiliki fitur menarik yang disebut mengiris .

Anda dapat melihatnya sebagai perpanjangan sintaks indeks-braket persegi.

Ini termasuk kasus tertentu di mana mengiris daftar. “ [::-1] “R” Duces the salinan terbalik.

Mari kita a Python List Slice () metode untuk membalikkan daftar.

# app.py

st = ['David', 'Millie', 'Winona']
print('Original List:', st)

# Reversing a list	
#Syntax: reversed_list = os[start:stop:step] 
reversed_list = st[::-1]

# updated list
print('Updated List:', reversed_list) 

Lihat outputnya.

➜  pyt python3 app.py
Original List: ['David', 'Millie', 'Winona']
Updated List: ['Winona', 'Millie', 'David']
➜  pyt 

Membalikkan daftar dengan cara ini membutuhkan lebih banyak memori daripada pembalikan di tempat karena menciptakan salinan (dangkal) dari daftar, dan membuat salinan membutuhkan mengalokasikan ruang yang cukup untuk menyimpan semua item yang ada.

Perhatikan bahwa ini hanya menciptakan co “sha” rendah “” di mana wadah diduplikasi, tetapi bukan item daftar individual.

Alih -alih menduplikasi item daftar itu sendiri, referensi ke elemen asli digunakan kembali dalam salinan baru wadah.

Jika item dapat berubah, memodifikasi item dalam daftar asli juga akan tercermin dalam salinan.

Kelemahan terbesar untuk membalikkan daftar dengan sintaks mengiris adalah bahwa ia menggunakan fitur Python yang lebih canggih yang beberapa orang akan katakan adalah “busur” ne. ”

Saya “harus saya – daftar pengirisnya cepat dan sedikit menantang untuk memahami saat pertama kali Anda menemukan sintaksnya yang unik.

Ketika saya saya sedang menggunakan kode Python yang menggunakan pengiris daftar, saya sering harus memperlambat dan berkonsentrasi pada pernyataan “laki -laki” sekutu parse “th” untuk memastikan saya mengerti apa yang ada.

Keluhan terbesar saya di sini adalah bahwa “ [::-1] “L” sintaksis cing tidak cukup berkomunikasi sehingga menciptakan salinan yang terbalik dari daftar asli.

Menggunakan fitur Pythpython’Scing untuk membalikkan daftar adalah solusi yang layak, tetapi bisa menjadi tantangan untuk membaca yang belum diinisiasi.

Membuat iterator terbalik dengan fungsi terbalik ()

Membalikkan daftar menggunakan membalikkan iterasi dengan terbalik () adalah pilihan lain. Ini tidak membalikkan daftar di tempat dan tidak membuat salinan lengkap.

Sebaliknya, kami mendapatkan terbalik Iterator Kita dapat menggunakan untuk bersepeda melalui elemen daftar dalam urutan terbalik.

Lihat kode berikut.

# app.py

st = ['David', 'Millie', 'Winona']
print('Original List:', st)

for item in reversed(st):
    print(item)
 

Lihat outputnya.

➜  pyt python3 app.py
Original List: ['David', 'Millie', 'Winona']
Winona
Millie
David
➜  pyt 

Itu untuk tutorial ini.

Pos terkait

Daftar Python ()

Python List Pop ()

Python List Sort ()

Indeks Daftar Python ()

Salinan Daftar Python ()

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 *