Mengiris array adalah konsep memotong – atau mengiris – bagian dari array. Bagaimana Anda melakukan ini dengan Python?
Jika Anda suka menonton konten video untuk melengkapi bacaan Anda, ini juga versi video dari artikel ini
Apa itu Array?
Array adalah struktur data yang memungkinkan Anda untuk menyimpan beberapa item dari tipe data yang sama secara berurutan dalam sebuah variabel pada waktu yang sama. Anda dapat mengakses setiap item ini berdasarkan indeksnya (lokasi dalam urutan)
Mereka sedikit mirip dengan daftar di Python, hanya saja daftar memungkinkan Anda menyimpan banyak item dari tipe data yang berbeda. Juga, meskipun daftar sudah ada di dalamnya, array tidak
Cara Mengakses Nilai dalam Array dengan Python
Berikut sintaks untuk membuat array dengan Python
import array as arr numbers = arr.array(typecode, [values])Karena tipe data array tidak dibangun ke dalam Python secara default, Anda harus mengimpornya dari modul import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 2. Kami mengimpor modul ini sebagai import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 _3
Menggunakan metode import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 _2 dari import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 3, kita dapat membuat array dengan menentukan import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 6 (tipe data dari nilai) dan nilai yang disimpan dalam array
Berikut tabel yang menunjukkan kode jenis yang dapat diterima
TypecodeC TypePython TypeBytes Size'b'signed charint1'B'unsigned charint1'u'wchar_tUnicode character2'h'signed shortint2'H'unsigned shortint2'i'signed inint2'I'unsigned inint2'l'signed longint4'L'unsigned longint4'Kode jenis didapat dari dokumentasi Python
Berikut adalah contoh array di Python
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 _Kami membuat array nilai integer dari 1 sampai 5 di sini. Kami juga mengakses nilai kedua dengan menggunakan tanda kurung siku dan indeksnya sesuai urutan, yaitu 1
Cara Memotong Array dengan Python
Katakanlah Anda ingin mengiris sebagian dari array ini dan menugaskan irisan ke variabel lain. Anda dapat melakukannya dengan menggunakan tanda titik dua dan tanda kurung siku. Sintaksnya terlihat seperti ini
array[start:stop:step]Indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 7 menentukan indeks tempat pemotongan dimulai. Standarnya adalah 0
Indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 8 menentukan indeks tempat pemotongan berakhir (tetapi tidak termasuk nilai pada indeks ini). Standarnya adalah panjang array
Argumen import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 9 menentukan langkah pemotongan. Standarnya adalah 1
Mari kita lihat beberapa contoh yang mencakup berbagai cara di mana array dapat dipotong
Cara mengiris tanpa indeks awal atau akhir
Saat Anda mengiris tanpa indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 7 atau import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 8, pada dasarnya Anda mendapatkan seluruh salinan array
Seperti yang Anda lihat di sini, kami memiliki salinan array array[start:stop:step] 2
Perlu juga dicatat bahwa tindakan pemotongan tidak memengaruhi larik asli. Dengan mengiris, Anda hanya "menyalin sebagian" dari array asli
Cara mengiris dengan indeks awal
Misalnya, jika Anda ingin mengiris array dari nilai awal tertentu hingga akhir array, begini caranya
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[2:] print(copy) # array('i', [3, 4, 5])Dengan mengirimkan array[start:stop:step] _3 dalam tanda kurung siku, pemotongan dimulai dari indeks 2 (yang menyimpan nilai 3) hingga akhir array, seperti yang dapat Anda lihat pada hasil
Cara mengiris dengan indeks akhir
Misalnya, jika Anda ingin memotong array dari nilai pertama ke nilai ketiga, begini caranya
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[:3] print(copy) # array('i', [1, 2, 3])Dengan meneruskan array[start:stop:step] _4 dalam tanda kurung siku, pemotongan dimulai dari indeks 0 (secara default, karena tidak ditentukan) hingga indeks ketiga yang kami tentukan
Seperti disebutkan sebelumnya, pemotongan mengecualikan nilai pada indeks ketiga. Jadi dalam hasilnya, seperti yang Anda temukan dalam variabel array[start:stop:step] 5, nilai yang dikembalikan adalah dari indeks 0 hingga indeks 2
Cara mengiris dengan indeks awal dan akhir
Bagaimana jika Anda ingin menentukan titik awal dan akhir pemotongan?
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[1:4] print(copy) # array('i', [2, 3, 4])Dengan menggunakan angka, lalu titik dua, diikuti dengan angka dalam tanda kurung siku, Anda dapat menentukan masing-masing indeks awal dan akhir
Dalam kasus kami, kami menggunakan 1 dan 4 seperti pada array[start:stop:step] 6. Dari hasil tersebut terlihat bahwa pemotongan dimulai dari nilai pada indeks 1 yaitu array[start:stop:step] 7, hingga nilai sebelum indeks 4 yaitu array[start:stop:step] 8 (pada indeks 3)
Cara mengiris dengan langkah-langkah
Saat Anda menentukan indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 7 dan import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 8 masing-masing 1 dan 5, pemotongan akan memilih nilai pada indeks 1, indeks 2 (1 kenaikan ke indeks sebelumnya), indeks 3 (1 kenaikan ke indeks sebelumnya) dan indeks 4 (dan satu
Dalam pemotongan ini, langkah 1 digunakan secara default. Namun Anda bisa memberikan langkah yang berbeda. Begini caranya
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[1:4:2] print(copy) # array('i', [2, 4])Dengan menambahkan titik dua lainnya, Anda dapat menentukan langkah. Jadi kita memiliki import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[:] print(copy) # array('i', [1, 2, 3, 4, 5]) _1
Dalam contoh kita, awalnya adalah 1, akhirnya adalah 4 dan langkahnya adalah 2. Pemotongan dimulai dari nilai pada indeks 1 yaitu 2, kemudian nilai berikutnya pada indeks sebelumnya ditambah step yaitu import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[:] print(copy) # array('i', [1, 2, 3, 4, 5]) 2 sama dengan 3. Nilai pada indeks 3 adalah 4 sehingga ditambahkan ke irisan. Indeks selanjutnya adalah 5 (import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[:] print(copy) # array('i', [1, 2, 3, 4, 5]) _3) tetapi karena 5 melebihi indeks stop, maka tidak akan ditambahkan ke slice
Seperti yang Anda lihat di kode, salinan yang diiris hanya 2 dan 4
Cara mengiris dengan indeks awal dan akhir negatif
Indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 7 atau import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[:] print(copy) # array('i', [1, 2, 3, 4, 5]) 5 juga bisa negatif. Indeks negatif dihitung dari akhir array. Ini berarti indeks negatif adalah nilai terakhir dalam sebuah array
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[-1]) # 5Dengan menggunakan negatif 1 di sini, Anda melihat bahwa 5 dikembalikan, yang berasal dari akhir array
Dengan ekspresi irisan seperti import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[:] print(copy) # array('i', [1, 2, 3, 4, 5]) 6, ini berarti indeks awal -3 dan indeks akhir -1. Mari kita lihat cara kerjanya dengan array kita
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[-3:-1] print(copy) # array('i', [3, 4])Irisan dimulai dari indeks -3 (yang merupakan nilai ketiga dari akhir array, yaitu 3) dan berhenti pada indeks -1 (yang merupakan nilai terakhir dalam array, yaitu 5). Mengiris tidak termasuk nilai terakhir jadi kita memiliki 3 dan 4
Menggabungkan indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 7 negatif dan indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 8 positif (atau sebaliknya) tidak akan berfungsi karena Anda akan pergi ke arah yang berbeda sekaligus
Cara mengiris dengan langkah negatif
Anda dapat menggunakan langkah negatif, yang berarti pengurangan langkah untuk pemotongan. Ini sebuah contoh
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 _0Di sini, kami menentukan awal dari indeks 2, tanpa akhir, dan langkah -1. Pemotongan di sini akan dimulai dari indeks 2 yaitu 3. Langkah negatif berarti nilai berikutnya dalam irisan akan berada pada indeks yang lebih kecil dari indeks sebelumnya sebesar 1. Ini berarti import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[:] print(copy) # array('i', [1, 2, 3, 4, 5]) _9 yang merupakan 1 sehingga nilai pada indeks ini, yaitu 2 akan ditambahkan ke irisan
Ini berlangsung terbalik hingga mencapai akhir array yang merupakan indeks 0. Array yang diiris menghasilkan nilai 3, 2, dan 1
Apa artinya import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[2:] print(copy) # array('i', [3, 4, 5]) _0?
Pernahkah Anda melihat ungkapan ini di mana pun di Python sebelumnya? . tidak ada indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 _7 yang ditentukan, atau indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 8, hanya langkah negatif -1
Indeks import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 7 default ke 0, jadi dengan menggunakan langkah -1, pemotongan akan berisi nilai pada indeks berikut. -1 (import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[2:] print(copy) # array('i', [3, 4, 5]) _4), -2 (import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[2:] print(copy) # array('i', [3, 4, 5]) 5), -3 (import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[2:] print(copy) # array('i', [3, 4, 5]) 6), -4 (import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[2:] print(copy) # array('i', [3, 4, 5]) 7) dan -5 (import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) copy = numbers[2:] print(copy) # array('i', [3, 4, 5]) 8). Cukup banyak salinan terbalik dari array
Ini kode untuk itu
import array as arr numbers = arr.array('i', [1, 2, 3, 4, 5]) print(numbers[1]) # 2 _1Seperti yang Anda lihat, ini adalah cara sederhana untuk membalikkan array
Membungkus
Pada artikel ini, kita telah melihat secara singkat cara mendeklarasikan array dengan Python, cara mengakses nilai dalam array, dan juga cara memotong – atau mengiris – bagian dari array menggunakan tanda titik dua dan tanda kurung siku.
Kami juga belajar bagaimana mengiris bekerja dengan langkah-langkah dan indeks mulai dan berhenti positif/negatif
Anda dapat mempelajari lebih lanjut tentang array di sini. Tutorial Array Python – Menentukan, Indeks, Metode
IKLAN
IKLAN
IKLAN
IKLAN
IKLAN
IKLAN
IKLAN
IKLAN
Advokat Pengembang dan Pembuat Konten bersemangat untuk membagikan pengetahuan saya tentang Teknologi. Saya menyederhanakan JavaScript / ReactJS / NodeJS / Frameworks / TypeScript / dkk saluran YT saya. Youtube. com/c/deeecode
Jika Anda membaca sejauh ini, tweet ke penulis untuk menunjukkan bahwa Anda peduli. Tweet terima kasih
Belajar kode secara gratis. Kurikulum open source freeCodeCamp telah membantu lebih dari 40.000 orang mendapatkan pekerjaan sebagai pengembang. Memulai