Python Pemahaman Daftar: Menambahkan, Mengurutkan, Panjang

⚡ Ringkasan Cerdas

A Python List adalah kontainer yang dapat diubah yang menyimpan objek seperti angka dan string dalam tanda kurung siku. Di sini Anda akan belajar mengakses, memotong, memperbarui, menghapus, menambahkan, mengurutkan, dan mengulang melalui list, serta cara kerja list comprehension.

  • 📋 Apa itu: A Python List adalah kontainer terurut dan dapat diubah yang ditulis dalam tanda kurung siku.
  • 🔢 Pengindeksan: Akses item berdasarkan indeks, dan gunakan indeks negatif untuk menghitung dari akhir.
  • mengiris: Iris sublist dengan list[start:end], yang merupakan batas atas eksklusif.
  • metode: append(), pop(), remove(), reverse(), sort(), dan banyak lagi memodifikasi daftar.
  • Pemahaman: List comprehensions membangun daftar baru dalam satu baris pendek dan cepat.
  • 🤖 Bantuan AI: Alat AI seperti Copilot menghasilkan daftar dan kode pemahaman secara instan.

Python Daftar Pemahaman

Apa itu Python Daftar?

Daftar persis seperti apa bunyinya, sebuah wadah yang berisi berbagai hal Python objek, yang bisa berupa bilangan bulat, kata, nilai, dsb. Ini setara dengan array dalam bahasa pemrograman lain. Ini direpresentasikan dengan tanda kurung siku (dan ini adalah salah satu atribut yang membedakannya dari tuple, yang dipisahkan oleh tanda kurung). Ini juga bisa diubah, yaitu, dapat dimodifikasi atau diperbarui; tidak seperti tuple, yang tidak bisa diubah.

Contoh dari Python daftar:

Python Daftar dapat bersifat homogen, yang berarti dapat berisi jenis objek yang sama; atau heterogen, termasuk berbagai jenis objek.

Contoh daftar homogen meliputi:

list of integers =  [1, 2, 3, 8, 33]
list of animals = ['dog', 'cat', 'goat']
list of names = ['John', 'Travis', 'Sheila']
list of floating numbers = [2.2, 4.5, 9.8, 10.4]

Contoh daftar heterogen meliputi:

[2, 'cat', 34.33, 'Travis']
[2.22, 33, 'pen']

Mengakses nilai dalam daftar

Untuk mengakses nilai dalam daftar, indeks objek di dalam daftar dapat digunakan. Indeks masuk Python daftar mengacu pada posisi elemen dalam daftar yang diurutkan. Misalnya:

list = [3, 22, 30, 5.3, 20]
  • Nilai pertama dalam daftar di atas, 3, memiliki indeks 0
  • Nilai kedua, 22, memiliki indeks 1
  • Nilai ketiga, 30, memiliki indeks 2

dan seterusnya. Untuk mengakses setiap nilai dari daftar, Anda akan menggunakan:

list[0] to access 3
list[1] to access 22
list[2] to access 30
list[3] to access 5.3
list[4] to access 20

Anggota terakhir dari suatu daftar juga dapat diakses dengan menggunakan indeks -1. Misalnya,

list[-1] = 20

Python Pengirisan daftar

Pengirisan daftar adalah metode pemisahan subset daftar, dan indeks objek daftar juga digunakan untuk ini. Misalnya, menggunakan contoh daftar yang sama di atas;

list[:] = [3, 22, 30, 5.3, 20] (all the members of the list];
list[1:3] = [22, 30] (members of the list from index 1 to index 3, without the member at index 3);
list[:4] = [3, 22, 30, 5.3] (members of the list from index 0 to index 4, without the member at index 4)
list[2:-1] = [30, 5.3] (members of the list from index 2, which is the third element, to the second to the last element in the list, which is 5.3).

Python list bersifat eksklusif batas atas, dan ini berarti indeks terakhir selama pemotongan daftar biasanya diabaikan. Itulah sebabnya

list[2:-1] = [30, 5.3]

, dan bukan [30, 5.3, 20]. Hal yang sama berlaku untuk semua contoh pemotongan daftar lainnya yang diberikan di atas.

Memperbarui daftar

Katakanlah Anda memiliki daftar = [fisika, kimia, matematika], dan Anda ingin mengubah daftar menjadi [biologi, kimia, matematika], yang secara efektif mengubah anggota pada indeks 0. Hal ini dapat dengan mudah dilakukan dengan menetapkan indeks tersebut ke anggota baru yang Anda inginkan.

Artinya,

list = [physics, chemistry, mathematics]
    list[0] = biology
    print(list)

Keluaran: [biologi, kimia, matematika]

Ini menggantikan anggota di indeks 0 (fisika) dengan nilai baru yang Anda inginkan (kimia). Ini dapat dilakukan untuk setiap anggota atau subkumpulan daftar yang ingin Anda ubah.

Untuk memberikan contoh lain; katakanlah Anda memiliki daftar yang disebut bilangan bulat dan berisi angka [2, 5, 9, 20, 27]. Untuk mengganti 5 dalam daftar tersebut dengan 10, Anda dapat melakukannya dengan:

integers = [2, 5, 9, 20, 27]
           integers[1] = 10
           print(integers)

>>> [2, 10, 9, 20, 27]

Untuk mengganti anggota terakhir dari daftar bilangan bulat, yaitu 27, dengan bilangan bebas seperti 30.5, Anda dapat menggunakan:

integers = [2, 5, 9, 20, 27]
           integers[-1] = 30.5
           print(integers)

>>> [2, 5, 9, 20, 30.5]

Menghapus elemen daftar

Ada 3 Python metode untuk menghapus elemen daftar: list.remove(), list.pop(), dan operator del. Metode Remove mengambil elemen tertentu yang akan dihapus sebagai argumen sementara pop dan del mengambil indeks elemen yang akan dihapus sebagai argumen. Misalnya:

daftar = [3, 5, 7, 8, 9, 20]

Untuk menghapus 3 (elemen pertama) dari daftar, Anda dapat menggunakan:

  • daftar.hapus(3) atau
  • daftar.pop[0], atau
  • hapus daftar[0]

Untuk menghapus 8, item di indeks 3, dari daftar, Anda dapat menggunakan:

  • daftar.hapus(8), atau
  • daftar.pop[3]

Menambahkan elemen daftar

Untuk menambahkan elemen ke daftar, metode append digunakan, dan ini menambahkan elemen ke akhir daftar.

Sebagai contoh:

list_1 = [3, 5, 7, 8, 9, 20]
    list_1.append(3.33)
    print(list_1)

    >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33]

    list_1.append("cats")
    print(list_1)
    >>> list_1 = [3, 5, 7, 8, 9, 20, 3.33, "cats"]

Daftar fungsi bawaan (metode)

Berikut ini adalah daftar fungsi dan metode bawaan beserta penjelasannya:

  • len(daftar): ini memberikan panjang daftar sebagai keluaran. Misalnya:
numbers = [2, 5, 7, 9]
print(len(numbers))
>>> 4
  • maks (daftar): mengembalikan item dalam daftar dengan nilai maksimum. Misalnya:
numbers = [2, 5, 7, 9]
print(max(numbers))
>>> 9
  • menit (daftar): mengembalikan item dalam daftar dengan nilai minimum. Misalnya:
numbers = [2, 5, 7, 9]
print(min(numbers))
>>> 2
  • daftar (tupel): mengonversi objek Tuple menjadi daftar. Misalnya;
animals = (cat, dog, fish, cow)
print(list(animals))
>>> [cat, dog, fish, cow]
numbers = [2, 5, 7, 9]
numbers.append(15)
print(numbers)
>>> [2, 5, 7, 9, 15]
  • daftar.pop(indeks): menghapus elemen pada indeks yang ditentukan dari daftar. Misalnya;
numbers = [2, 5, 7, 9, 15]
numbers.pop(2)
print(numbers)
>>> [2, 5, 9, 15]
  • daftar.hapus(elemen): menghapus elemen dari daftar. Misalnya;
values = [2, 5, 7, 9]
values.remove(2)
print(values)
>>> [5, 7, 9]
  • daftar.terbalik(): membalikkan objek daftar. Misalnya;
values = [2, 5, 7, 10]
values.reverse()
print(values)
>>> [10, 7, 5, 2]
  • daftar.index(elemen): untuk mendapatkan nilai indeks suatu elemen dalam daftar. Misalnya;
animals = ['cat', 'dog', 'fish', 'cow', 'goat']
fish_index = animals.index('fish')
print(fish_index)
>>> 2
  • jumlah(daftar): untuk mendapatkan jumlah semua nilai dalam daftar, jika semua nilai berupa angka (bilangan bulat atau desimal). Misalnya;
values = [2, 5, 10]
sum_of_values = sum(values)
print(sum_of_values)

>>> 17

Jika daftar berisi elemen apa pun yang bukan angka, misalnya string, metode penjumlahan tidak akan berfungsi. Anda akan mendapatkan pesan kesalahan yang mengatakan: “KetikError: tipe operan tidak didukung untuk +: 'int' dan 'str'”

  • list.sort(): untuk menyusun daftar bilangan bulat, bilangan floating point, atau string, dalam urutan menaik atau menurun. Misalnya:
values = [1, 7, 9, 3, 5]
# To sort the values in ascending order:
values.sort()
print(values)

>>> [1, 3, 5, 7, 9]

Contoh lain:

values = [2, 10, 7, 14, 50]
# To sort the values in descending order:
values.sort(reverse = True)
print(values)

>>> [50, 14, 10, 7, 2]

Daftar string juga dapat diurutkan, berdasarkan abjad, atau berdasarkan panjang string. Misalnya;

# to sort the list by length of the elements
strings = ['cat', 'mammal', 'goat', 'is']
sort_by_alphabet = strings.sort()
sort_by_length = strings.sort(key = len)
print(sort_by_alphabet)
print(sort_by_length)

>>> ['cat', 'goat', 'is', 'mammal']
        ['is', 'cat', 'goat', 'mammal']

Kita dapat mengurutkan daftar yang sama berdasarkan abjad dengan menggunakan 'string.

Looping melalui daftar

Looping melalui daftar dapat dilakukan dengan cara yang sama seperti toilet lainnya.ping fungsi di Python. Dengan cara ini, suatu metode dapat dijalankan pada beberapa elemen daftar secara bersamaan. Misalnya:

daftar = [10, 20, 30, 40, 50, 60, 70].

Untuk mengulang semua elemen dalam daftar ini, dan katakanlah, tambahkan 10 ke setiap elemen:

for elem in list:
        elem = elem + 5
        print(elem)
    
    >>>>15
        25
        35
        45
        55
        65
        75

Untuk mengulang tiga elemen pertama dari daftar, dan menghapus semuanya;

for elem in list[:3]:
    list.remove(elem)

    >>>list = [40, 50, 60, 70]

Untuk mengulang 3rd (indeks 2) ke elemen terakhir dalam daftar, dan menambahkannya ke daftar baru bernama new_list:

new_list = []	
    for elem in list[2:]:
        new_list.append(elem)
        print(“New List: {}”.format(new_list))
    
   Output:
	New List: [30, 40, 50, 60, 70]

Dengan cara ini, metode atau fungsi apa pun dapat diterapkan pada anggota daftar untuk melakukan operasi tertentu. Anda dapat melakukan pengulangan melalui semua anggota daftar, atau melakukan pengulangan melalui sebagian daftar dengan menggunakan pemotongan daftar.

Daftar Pemahaman Python

Pemahaman daftar adalah Python fungsi yang digunakan untuk membuat sequence baru (seperti daftar, kamus, dll) menggunakan sequence yang sudah dibuat. Mereka membantu mengurangi loop yang lebih panjang dan membuat kode Anda lebih mudah dibaca dan dipelihara.

Misalnya; katakanlah Anda ingin membuat daftar yang berisi kuadrat semua angka dari 1 hingga 9:

list_of squares = []
    for int in range(1, 10):
        square = int ** 2
        list_of_squares.append(square)

    print(list_of_squares)

List_of_squares using for loop:

    [1, 4, 9, 16, 25, 36, 49, 64, 81]

Untuk melakukan hal yang sama dengan pemahaman daftar:

list_of_squares_2 = [int**2 for int in range(1, 10)]

    print('List of squares using list comprehension: {}'.format(list_of_squares_2))

Output using list comprehension:

    [1, 4, 9, 16, 25, 36, 49, 64, 81]

Seperti yang terlihat di atas, penulisan kode menggunakan pemahaman daftar jauh lebih singkat daripada menggunakan for loop tradisional, dan juga lebih cepat. Ini hanyalah salah satu contoh penggunaan pemahaman daftar sebagai pengganti for loop, tetapi ini dapat direplikasi dan digunakan di banyak tempat di mana for loop juga dapat digunakan. Terkadang, menggunakan for loop adalah pilihan yang lebih baik, terutama jika kodenya rumit, tetapi dalam banyak kasus, pemahaman daftar akan membuat pengodean Anda lebih mudah dan cepat.

Di bawah ini adalah tabel yang berisi beberapa daftar fungsi dan metode, serta deskripsinya.

Fungsi bawaan

FUNGSI DESKRIPSI
Bulat() Membulatkan angka yang diteruskan sebagai argumen ke sejumlah digit tertentu dan mengembalikan nilai floating point
menit() mengembalikan elemen minimum dari daftar yang diberikan
Maks() mengembalikan elemen maksimum dari daftar yang diberikan
len () Mengembalikan panjang daftar
Menghitung() Fungsi bawaan ini menghasilkan nilai dan indeks item dalam sebuah iterable, jadi kita tidak perlu menghitung secara manual
Saring() menguji apakah setiap elemen daftar benar atau tidak
Lambda Ekspresi yang dapat muncul di tempat di mana def (untuk membuat fungsi) tidak bersifat sintaksis, di dalam literal daftar atau argumen pemanggilan fungsi
Peta() mengembalikan daftar hasil setelah menerapkan fungsi yang diberikan ke setiap item dari iterable tertentu
Mengumpulkan() menerapkan fungsi tertentu yang diteruskan dalam argumennya ke semua elemen daftar akan mengembalikan daftar yang berisi hasil antara
Jumlah() Mengembalikan jumlah semua angka dalam daftar
Cm() Ini digunakan untuk membandingkan dua daftar dan mengembalikan 1 jika daftar pertama lebih besar dari daftar kedua.
Menyisipkan Sisipkan elemen ke daftar pada posisi tertentu

Daftar Metode

FUNGSI DESKRIPSI
menambahkan() Menambahkan item baru ke akhir daftar
Jernih() Menghapus semua item dari daftar
Salinan() Mengembalikan salinan daftar asli
Memperpanjang() Tambahkan banyak item ke akhir daftar
Menghitung() Mengembalikan jumlah kemunculan item tertentu dalam daftar
Indeks() Mengembalikan indeks elemen tertentu dari daftar
Pop () Menghapus item dari daftar pada indeks tertentu (hapus berdasarkan posisi)
Menghapus() Menghapus item tertentu dari daftar (hapus berdasarkan nilai)
Reverse() Metode pembalikan di tempat yang membalikkan urutan elemen daftar

Pertanyaan Umum Demo Slot

List adalah wadah terurut yang dapat diubah, ditulis dalam tanda kurung siku, yang dapat menampung berbagai objek, seperti bilangan bulat, string, dan bilangan pecahan. PythonVersi array miliknya.

Gunakan list[start:end] untuk mendapatkan sublist. Pemotongan bersifat eksklusif batas atas, sehingga indeks akhir tidak disertakan. Menghilangkan start atau end akan menggunakan batas list.

Gunakan append() untuk menambahkan satu item ke akhir dan extend() untuk menambahkan banyak item. Hapus item dengan remove() berdasarkan nilai, atau pop() dan del berdasarkan indeks.

Gunakan `list.sort()` untuk mengurutkan string secara langsung dalam urutan menaik. Berikan `reverse=True` untuk urutan menurun, atau `key=len` untuk mengurutkan string berdasarkan panjangnya.

List comprehension membuat daftar baru dalam satu baris, seperti [x**2 for x in range(1, 10)]. Ini menggantikan banyak perulangan for dengan kode yang lebih pendek, lebih cepat, dan lebih mudah dibaca.

Asisten AI seperti GitHub Copilot melengkapi metode daftar secara otomatis, mengkonversi perulangan for menjadi list comprehension, dan menghasilkan kode pengurutan atau pemfilteran dari deskripsi bahasa biasa.

Ya. Alat berbasis AI dapat mengotomatiskan pengubahan perulangan menjadi pemahaman, menyarankan metode daftar yang tepat, dan menandai operasi yang tidak efisien sehingga kode daftar Anda berjalan lebih cepat.

List bersifat mutable (dapat diubah) dan menggunakan tanda kurung siku, sehingga Anda dapat mengubah item-item di dalamnya. Tuple bersifat immutable (tidak dapat diubah) dan menggunakan tanda kurung biasa, sehingga isinya tidak dapat dimodifikasi setelah dibuat.

Ringkaslah postingan ini dengan: