Menggunakan metode membagi dua dapat mengiris daftar berdasarkan nilai dengan Python. Python dengan mudah memiliki modul membagi dua sebagai bagian dari perpustakaan standar
Daftar irisan python dengan contoh nilai
Kode contoh sederhana mengiris daftar berdasarkan nilai
import bisect data = [1, 3, 5, 6, 8, 9, 11, 13, 17] value = 9 pos = bisect.bisect_right(data, value) res = data[:pos] print(res)Keluaran
Contoh lain menggunakan pernyataan if
v = 5 l = [1, 3, 5, 8, 9, 11, 13, 17] if v in l: # do stuff print(l[:l.index(v)]) _Keluaran. [1, 3]
Berikan komentar jika Anda memiliki keraguan dan saran tentang topik irisan Python ini
Catatan. IDE. PyCharm 2021. 3. 3 (Edisi Komunitas)
Windows 10
Piton 3. 10. 1
Semua Contoh Python ada di Python 3, jadi Mungkin berbeda dari python 2 atau versi yang ditingkatkan
Rohit
Gelar dalam Ilmu Komputer dan Insinyur. Pengembang Aplikasi dan memiliki banyak pengalaman bahasa Pemrograman. Antusias terhadap teknologi & suka belajar teknis
Untuk mengakses berbagai item dalam daftar, Anda perlu mengiris daftar. Salah satu cara untuk melakukannya adalah dengan menggunakan operator pengiris sederhana L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']5
Dengan operator ini Anda dapat menentukan di mana memulai pemotongan, di mana mengakhiri dan menentukan langkahnya
Mengiris Daftar
Jika L adalah daftar, ekspresi L [ mulai. berhenti. langkah ] mengembalikan bagian daftar dari indeks mulai ke indeks berhenti . step.
Sintaksis
Contoh Dasar
Berikut adalah contoh dasar pemotongan daftar
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:7]) # Prints ['c', 'd', 'e', 'f', 'g']
Perhatikan bahwa item pada indeks 7 L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']6 tidak disertakan
Iris dengan Indeks Negatif
Anda juga dapat menentukan indeks negatif saat mengiris daftar
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']
Iris dengan Indeks Positif & Negatif
Anda dapat menentukan indeks positif dan negatif secara bersamaan
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:-5]) # Prints ['c', 'd']_
Tentukan Langkah Pemotongan
Anda dapat menentukan langkah pemotongan menggunakan parameter langkah . Parameter langkah adalah opsional dan secara default 1.
# Return every 2nd item between position 2 to 7 L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:7:2]) # Prints ['c', 'e', 'g']
Ukuran Langkah Negatif
Anda bahkan dapat menentukan ukuran langkah negatif
# Return every 2nd item between position 6 to 1 L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[6:1:-2]) # Prints ['g', 'e', 'c']_
Iris di Awal & Akhir
Menghilangkan indeks mulai memulai irisan dari indeks 0. Artinya, L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']_7 setara dengan L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']8
# Slice the first three items from the list L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[:3]) # Prints ['a', 'b', 'c']
Sedangkan, menghilangkan indeks stop akan memperluas irisan ke akhir daftar. Artinya, L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']_9 sama dengan L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:-5]) # Prints ['c', 'd']0
# Slice the last three items from the list L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[6:]) # Prints ['g', 'h', 'i']
Membalikkan Daftar
Anda dapat membalikkan daftar dengan menghilangkan start dan stop indices and specifying a step as -1.
L = ['a', 'b', 'c', 'd', 'e'] print(L[::-1]) # Prints ['e', 'd', 'c', 'b', 'a']
Ubah Beberapa Nilai Daftar
Anda dapat mengubah beberapa item daftar sekaligus dengan tugas irisan. Penugasan ini menggantikan potongan tertentu dari daftar dengan item yang ditugaskan iterable
# Modify multiple list items L = ['a', 'b', 'c', 'd', 'e'] L[1:4] = [1, 2, 3] print(L) # Prints ['a', 1, 2, 3, 'e']
# Replace multiple elements in place of a single element L = ['a', 'b', 'c', 'd', 'e'] L[1:2] = [1, 2, 3] print(L) # Prints ['a', 1, 2, 3, 'c', 'd', 'e']
Sisipkan Beberapa Item Daftar
Anda dapat memasukkan item ke dalam daftar tanpa mengganti apa pun. Cukup tentukan irisan dengan panjang nol
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']0
Anda dapat menyisipkan item ke tengah daftar dengan mempertahankan start dan stop indices of the slice same.
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']1
Hapus Beberapa Item Daftar
Anda dapat menghapus banyak item dari tengah daftar dengan menugaskan irisan yang sesuai ke daftar kosong
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']2
Anda juga dapat menggunakan pernyataan del dengan irisan yang sama
L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[-7:-2]) # Prints ['c', 'd', 'e', 'f', 'g']_3
Kloning atau Salin Daftar
Saat Anda menjalankan L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:-5]) # Prints ['c', 'd']_1, Anda sebenarnya tidak memiliki dua daftar. Tugas hanya menyalin referensi ke daftar, bukan daftar yang sebenarnya. Jadi, L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:-5]) # Prints ['c', 'd']2 dan L = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] print(L[2:-5]) # Prints ['c', 'd']3 mengacu pada daftar yang sama setelah penugasan