{"id":31592,"date":"2024-02-13T15:02:36","date_gmt":"2024-02-13T15:02:36","guid":{"rendered":"https:\/\/tipd.an-nur.ac.id\/?p=31592"},"modified":"2024-02-13T15:02:36","modified_gmt":"2024-02-13T15:02:36","slug":"struktur-data-array-list-dictionary","status":"publish","type":"post","link":"https:\/\/wirabuana.ac.id\/artikel\/struktur-data-array-list-dictionary\/","title":{"rendered":"Struktur Data (Array, List, Dictionary)"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_81 ez-toc-wrap-left counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/wirabuana.ac.id\/artikel\/struktur-data-array-list-dictionary\/#Array\" >Array<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/wirabuana.ac.id\/artikel\/struktur-data-array-list-dictionary\/#List\" >List<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/wirabuana.ac.id\/artikel\/struktur-data-array-list-dictionary\/#Dictionary\" >Dictionary<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/wirabuana.ac.id\/artikel\/struktur-data-array-list-dictionary\/#Kesimpulan\" >Kesimpulan<\/a><\/li><\/ul><\/nav><\/div>\n<div class=\"content\" tabindex=\"0\" aria-description=\"\">\n<div class=\"ac-container ac-adaptiveCard\">\n<div class=\"ac-textBlock\">\n<p>Struktur data adalah cara untuk menyimpan dan mengatur data dalam program komputer. Struktur data yang tepat dapat memudahkan pengolahan data dan meningkatkan efisiensi program. Dalam artikel ini, kita akan membahas tiga jenis struktur data yang umum digunakan dalam bahasa pemrograman Python, yaitu array, list, dan dictionary.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Array\"><\/span>Array<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Array adalah kumpulan data dengan tipe yang sama yang disimpan dalam memori secara berurutan. Array dapat diakses menggunakan indeks, yaitu nomor yang menunjukkan posisi data dalam array. Indeks array biasanya dimulai dari nol, sehingga data pertama dalam array memiliki indeks nol, data kedua memiliki indeks satu, dan seterusnya.<\/p>\n<p>Array memiliki beberapa kelebihan, antara lain:<\/p>\n<ul>\n<li>Memudahkan akses data secara acak (random access) dengan menggunakan indeks.<\/li>\n<li>Memiliki ukuran yang tetap dan diketahui sejak awal, sehingga alokasi memori lebih efisien.<\/li>\n<li>Cocok untuk menyimpan data yang memiliki hubungan urutan atau spasial, seperti matriks, vektor, gambar, suara, dll.<\/li>\n<\/ul>\n<p>Array juga memiliki beberapa kelemahan, antara lain:<\/p>\n<ul>\n<li>Sulit untuk menambahkan atau menghapus data, karena harus menggeser data lain atau membuat array baru.<\/li>\n<li>Tidak fleksibel untuk menyimpan data dengan tipe yang berbeda atau jumlah yang bervariasi.<\/li>\n<\/ul>\n<p>Di Python, array dapat dibuat dengan menggunakan modul array yang harus diimpor terlebih dahulu. Contoh kode untuk membuat array adalah sebagai berikut:<\/p>\n<pre><code class=\"language-python\"><span class=\"hljs-comment\"># Mengimpor modul array<\/span>\n<span class=\"hljs-keyword\">import<\/span> array\n\n<span class=\"hljs-comment\"># Membuat array dengan tipe integer<\/span>\narr = array.array(<span class=\"hljs-string\">'i'<\/span>, [<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">3<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>])\n\n<span class=\"hljs-comment\"># Menampilkan array<\/span>\n<span class=\"hljs-built_in\">print<\/span>(arr)\n\n<span class=\"hljs-comment\"># Menampilkan tipe array<\/span>\n<span class=\"hljs-built_in\">print<\/span>(<span class=\"hljs-built_in\">type<\/span>(arr))\n\n<span class=\"hljs-comment\"># Menampilkan elemen array pada indeks tertentu<\/span>\n<span class=\"hljs-built_in\">print<\/span>(arr[<span class=\"hljs-number\">0<\/span>])\n<span class=\"hljs-built_in\">print<\/span>(arr[<span class=\"hljs-number\">3<\/span>])\n\n<span class=\"hljs-comment\"># Mengubah elemen array pada indeks tertentu<\/span>\narr[<span class=\"hljs-number\">2<\/span>] = <span class=\"hljs-number\">10<\/span>\n<span class=\"hljs-built_in\">print<\/span>(arr)\n\n<span class=\"hljs-comment\"># Menambahkan elemen array di akhir<\/span>\narr.append(<span class=\"hljs-number\">6<\/span>)\n<span class=\"hljs-built_in\">print<\/span>(arr)\n\n<span class=\"hljs-comment\"># Menghapus elemen array pada indeks tertentu<\/span>\narr.pop(<span class=\"hljs-number\">1<\/span>)\n<span class=\"hljs-built_in\">print<\/span>(arr)\n<\/code><\/pre>\n<p>Output:<\/p>\n<pre><code class=\"language-python\">array(<span class=\"hljs-string\">'i'<\/span>, [<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">3<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>])\n&lt;<span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-string\">'array.array'<\/span>&gt;\n<span class=\"hljs-number\">1<\/span>\n<span class=\"hljs-number\">4<\/span>\narray(<span class=\"hljs-string\">'i'<\/span>, [<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">10<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>])\narray(<span class=\"hljs-string\">'i'<\/span>, [<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">10<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>, <span class=\"hljs-number\">6<\/span>])\narray(<span class=\"hljs-string\">'i'<\/span>, [<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">10<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>, <span class=\"hljs-number\">6<\/span>])\n<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"List\"><\/span>List<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>List adalah kumpulan data dengan urutan tertentu yang dapat berisi tipe apa saja. List dapat diakses menggunakan indeks, sama seperti array. Namun, list memiliki ukuran yang dinamis dan dapat berubah sesuai dengan kebutuhan. List juga dapat berisi data yang bersarang (nested), yaitu list di dalam list.<\/p>\n<p>List memiliki beberapa kelebihan, antara lain:<\/p>\n<ul>\n<li>Fleksibel untuk menyimpan data dengan tipe yang berbeda atau jumlah yang bervariasi.<\/li>\n<li>Mudah untuk menambahkan, menghapus, atau mengubah data, karena memiliki metode bawaan yang beragam.<\/li>\n<li>Cocok untuk menyimpan data yang memiliki hubungan sekuensial atau hierarkis, seperti daftar belanja, riwayat transaksi, pohon, graf, dll.<\/li>\n<\/ul>\n<p>List juga memiliki beberapa kelemahan, antara lain:<\/p>\n<ul>\n<li>Kurang efisien dalam hal alokasi memori, karena harus menyediakan ruang ekstra untuk pertumbuhan.<\/li>\n<li>Kurang cepat dalam hal akses data secara acak, karena harus mencari data berdasarkan indeks.<\/li>\n<\/ul>\n<p>Di Python, list dapat dibuat dengan menggunakan kurung siku ([ ]) atau fungsi list(). Contoh kode untuk membuat list adalah sebagai berikut:<\/p>\n<pre><code class=\"language-python\"><span class=\"hljs-comment\"># Membuat list dengan kurung siku<\/span>\nlst = [<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">3<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>]\n\n<span class=\"hljs-comment\"># Menampilkan list<\/span>\n<span class=\"hljs-built_in\">print<\/span>(lst)\n\n<span class=\"hljs-comment\"># Menampilkan tipe list<\/span>\n<span class=\"hljs-built_in\">print<\/span>(<span class=\"hljs-built_in\">type<\/span>(lst))\n\n<span class=\"hljs-comment\"># Menampilkan elemen list pada indeks tertentu<\/span>\n<span class=\"hljs-built_in\">print<\/span>(lst[<span class=\"hljs-number\">0<\/span>])\n<span class=\"hljs-built_in\">print<\/span>(lst[<span class=\"hljs-number\">3<\/span>])\n\n<span class=\"hljs-comment\"># Mengubah elemen list pada indeks tertentu<\/span>\nlst[<span class=\"hljs-number\">2<\/span>] = <span class=\"hljs-number\">10<\/span>\n<span class=\"hljs-built_in\">print<\/span>(lst)\n\n<span class=\"hljs-comment\"># Menambahkan elemen list di akhir<\/span>\nlst.append(<span class=\"hljs-number\">6<\/span>)\n<span class=\"hljs-built_in\">print<\/span>(lst)\n\n<span class=\"hljs-comment\"># Menghapus elemen list pada indeks tertentu<\/span>\nlst.pop(<span class=\"hljs-number\">1<\/span>)\n<span class=\"hljs-built_in\">print<\/span>(lst)\n\n<span class=\"hljs-comment\"># Membuat list dengan fungsi list()<\/span>\nlst2 = <span class=\"hljs-built_in\">list<\/span>(<span class=\"hljs-string\">\"Hello\"<\/span>)\n<span class=\"hljs-built_in\">print<\/span>(lst2)\n<\/code><\/pre>\n<p>Output:<\/p>\n<pre><code class=\"language-python\">[<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">3<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>]\n&lt;<span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-string\">'list'<\/span>&gt;\n<span class=\"hljs-number\">1<\/span>\n<span class=\"hljs-number\">4<\/span>\n[<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">10<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>]\n[<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">10<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>, <span class=\"hljs-number\">6<\/span>]\n[<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">10<\/span>, <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>, <span class=\"hljs-number\">6<\/span>]\n[<span class=\"hljs-string\">'H'<\/span>, <span class=\"hljs-string\">'e'<\/span>, <span class=\"hljs-string\">'l'<\/span>, <span class=\"hljs-string\">'l'<\/span>, <span class=\"hljs-string\">'o'<\/span>]\n<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Dictionary\"><\/span>Dictionary<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Dictionary adalah kumpulan data yang tidak berurutan yang terdiri dari pasangan kunci (key) dan nilai (value). Dictionary dapat diakses menggunakan kunci, bukan indeks. Kunci harus bersifat unik dan tidak berubah (immutable), sedangkan nilai dapat berupa tipe apa saja dan dapat berubah (mutable). Dictionary juga dapat berisi data yang bersarang, yaitu dictionary di dalam dictionary.<\/p>\n<p>Dictionary memiliki beberapa kelebihan, antara lain:<\/p>\n<ul>\n<li>Cepat untuk mencari data, karena menggunakan teknik hashing untuk memetakan kunci dengan nilai.<\/li>\n<li>Fleksibel untuk menyimpan data dengan tipe yang berbeda atau jumlah yang bervariasi.<\/li>\n<li>Cocok untuk menyimpan data yang memiliki hubungan asosiatif atau pemetaan, seperti data pegawai, data mahasiswa, data produk, dll.<\/li>\n<\/ul>\n<p>Dictionary juga memiliki beberapa kelemahan, antara lain:<\/p>\n<ul>\n<li>Kurang efisien dalam hal alokasi memori, karena harus menyediakan ruang ekstra untuk pertumbuhan.<\/li>\n<li>Tidak memiliki urutan yang tetap, sehingga sulit untuk mengurutkan atau membalikkan data.<\/li>\n<\/ul>\n<p>Di Python, dictionary dapat dibuat dengan menggunakan kurung kurawal ({ }) atau fungsi dict(). Contoh kode untuk membuat dictionary adalah sebagai berikut:<\/p>\n<pre><code class=\"language-python\"><span class=\"hljs-comment\"># Membuat dictionary dengan kurung kurawal<\/span>\ndct = {<span class=\"hljs-string\">\"name\"<\/span>: <span class=\"hljs-string\">\"Alice\"<\/span>, <span class=\"hljs-string\">\"age\"<\/span>: <span class=\"hljs-number\">20<\/span>, <span class=\"hljs-string\">\"gender\"<\/span>: <span class=\"hljs-string\">\"female\"<\/span>}\n\n<span class=\"hljs-comment\"># Menampilkan dictionary<\/span>\n<span class=\"hljs-built_in\">print<\/span>(dct)\n\n<span class=\"hljs-comment\"># Menampilkan tipe dictionary<\/span>\n<span class=\"hljs-built_in\">print<\/span>(<span class=\"hljs-built_in\">type<\/span>(dct))\n\n<span class=\"hljs-comment\"># Menampilkan nilai dictionary pada kunci tertentu<\/span>\n<span class=\"hljs-built_in\">print<\/span>(dct[<span class=\"hljs-string\">\"name\"<\/span>])\n<span class=\"hljs-built_in\">print<\/span>(dct[<span class=\"hljs-string\">\"age\"<\/span>])\n\n<span class=\"hljs-comment\"># Mengubah nilai dictionary pada kunci tertentu<\/span>\ndct[<span class=\"hljs-string\">\"age\"<\/span>] = <span class=\"hljs-number\">21<\/span>\n<span class=\"hljs-built_in\">print<\/span>(dct)\n\n<span class=\"hljs-comment\"># Menambahkan pasangan kunci dan nilai baru<\/span>\ndct[<span class=\"hljs-string\">\"city\"<\/span>] = <span class=\"hljs-string\">\"Jakarta\"<\/span>\n<span class=\"hljs-built_in\">print<\/span>(dct)\n\n<span class=\"hljs-comment\"># Menghapus pasangan kunci dan nilai pada kunci tertentu<\/span>\ndct.pop(<span class=\"hljs-string\">\"gender\"<\/span>)\n<span class=\"hljs-built_in\">print<\/span>(dct)\n\n<span class=\"hljs-comment\"># Membuat dictionary dengan fungsi dict()<\/span>\ndct2 = <span class=\"hljs-built_in\">dict<\/span>(name=<span class=\"hljs-string\">\"Bob\"<\/span>, age=<span class=\"hljs-number\">25<\/span>, gender=<span class=\"hljs-string\">\"male\"<\/span>)\n<span class=\"hljs-built_in\">print<\/span>(dct2)\n<\/code><\/pre>\n<p>Output:<\/p>\n<pre><code class=\"language-python\">{<span class=\"hljs-string\">'name'<\/span>: <span class=\"hljs-string\">'Alice'<\/span>, <span class=\"hljs-string\">'age'<\/span>: <span class=\"hljs-number\">20<\/span>, <span class=\"hljs-string\">'gender'<\/span>: <span class=\"hljs-string\">'female'<\/span>}\n&lt;<span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-string\">'dict'<\/span>&gt;\nAlice\n<span class=\"hljs-number\">20<\/span>\n{<span class=\"hljs-string\">'name'<\/span>: <span class=\"hljs-string\">'Alice'<\/span>, <span class=\"hljs-string\">'age'<\/span>: <span class=\"hljs-number\">21<\/span>, <span class=\"hljs-string\">'gender'<\/span>: <span class=\"hljs-string\">'female'<\/span>}\n{<span class=\"hljs-string\">'name'<\/span>: <span class=\"hljs-string\">'Alice'<\/span>, <span class=\"hljs-string\">'age'<\/span>: <span class=\"hljs-number\">21<\/span>, <span class=\"hljs-string\">'gender'<\/span>: <span class=\"hljs-string\">'female'<\/span>, <span class=\"hljs-string\">'city'<\/span>: <span class=\"hljs-string\">'Jakarta'<\/span>}\n{<span class=\"hljs-string\">'name'<\/span>: <span class=\"hljs-string\">'Alice'<\/span>, <span class=\"hljs-string\">'age'<\/span>: <span class=\"hljs-number\">21<\/span>, <span class=\"hljs-string\">'city'<\/span>: <span class=\"hljs-string\">'Jakarta'<\/span>}\n{<span class=\"hljs-string\">'name'<\/span>: <span class=\"hljs-string\">'Bob'<\/span>, <span class=\"hljs-string\">'age'<\/span>: <span class=\"hljs-number\">25<\/span>, <span class=\"hljs-string\">'gender'<\/span>: <span class=\"hljs-string\">'male'<\/span>}\n<\/code><\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Kesimpulan\"><\/span>Kesimpulan<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Struktur data adalah cara untuk menyimpan dan mengatur data dalam program komputer. Struktur data yang tepat dapat memudahkan pengolahan data dan meningkatkan efisiensi program. Tiga jenis struktur data yang umum digunakan dalam bahasa pemrograman Python adalah array, list, dan dictionary. Array adalah kumpulan data dengan tipe yang sama yang disimpan dalam memori secara berurutan. List adalah kumpulan data dengan urutan tertentu yang dapat berisi tipe apa saja. Dictionary adalah kumpulan data yang tidak berurutan yang terdiri dari pasangan kunci dan nilai. Ketiga struktur data ini memiliki kelebihan dan kelemahan masing-masing, serta cocok untuk digunakan dalam kasus yang berbeda.<\/p>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Struktur data adalah cara untuk menyimpan dan mengatur data dalam program komputer. Struktur data yang tepat dapat memudahkan pengolahan data dan meningkatkan efisiensi program. Dalam&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[285],"tags":[],"class_list":["post-31592","post","type-post","status-publish","format-standard","hentry","category-artikel"],"_links":{"self":[{"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/posts\/31592","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/comments?post=31592"}],"version-history":[{"count":0,"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/posts\/31592\/revisions"}],"wp:attachment":[{"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/media?parent=31592"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/categories?post=31592"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wirabuana.ac.id\/artikel\/wp-json\/wp\/v2\/tags?post=31592"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}