Daftar dan tupel bisa dibilang merupakan tipe data Python yang paling serbaguna dan berguna. Anda akan menemukannya di hampir setiap program Python nontrivial Show
Inilah yang akan Anda pelajari dalam tutorial ini. Anda akan membahas karakteristik penting dari list dan tuple. Anda akan belajar cara mendefinisikannya dan cara memanipulasinya. Setelah selesai, Anda akan memiliki perasaan yang baik tentang kapan dan bagaimana menggunakan tipe objek ini dalam program Python Ikuti Kuis. Uji pengetahuan Anda dengan kuis "Daftar dan Tuple Python" interaktif kami. Setelah selesai Anda akan menerima skor sehingga Anda dapat melacak kemajuan belajar Anda dari waktu ke waktu Ikuti Kuis » Daftar PythonSingkatnya, daftar adalah kumpulan objek arbitrer, agak mirip dengan array di banyak bahasa pemrograman lain tetapi lebih fleksibel. Daftar didefinisikan dalam Python dengan melampirkan urutan objek yang dipisahkan koma dalam tanda kurung siku ( 5), seperti yang ditunjukkan di bawah ini>>> _Karakteristik penting dari daftar Python adalah sebagai berikut
Masing-masing fitur ini diperiksa secara lebih rinci di bawah ini Hilangkan iklanDaftar DipesanDaftar bukan hanya kumpulan objek. Ini adalah kumpulan objek yang dipesan. Urutan di mana Anda menentukan elemen saat Anda menentukan daftar adalah karakteristik bawaan dari daftar itu dan dipertahankan untuk seumur hidup daftar itu. (Anda akan melihat tipe data Python yang tidak diurutkan dalam tutorial kamus berikutnya. ) Daftar yang memiliki elemen yang sama dalam urutan yang berbeda tidaklah sama >>> _Daftar Dapat Berisi Objek Sewenang-wenangDaftar dapat berisi bermacam-macam objek. Semua elemen daftar bisa bertipe sama >>> _Atau elemennya bisa dari berbagai jenis >>> _Daftar bahkan dapat berisi objek kompleks, seperti fungsi, kelas, dan modul, yang akan Anda pelajari di tutorial mendatang >>> _Daftar dapat berisi sejumlah objek, dari nol hingga sebanyak yang dimungkinkan oleh memori komputer Anda >>> _(Daftar dengan objek tunggal terkadang disebut sebagai daftar tunggal. ) Daftar objek tidak harus unik. Objek yang diberikan dapat muncul dalam daftar beberapa kali >>> _Elemen Daftar Dapat Diakses oleh IndeksElemen individual dalam daftar dapat diakses menggunakan indeks dalam tanda kurung siku. Ini persis analog dengan mengakses karakter individu dalam sebuah string. Pengindeksan daftar berbasis nol seperti halnya dengan string Perhatikan daftar berikut >>> ________0______ Indeks untuk elemen di 6 ditunjukkan di bawah iniDaftar IndeksBerikut adalah kode Python untuk mengakses beberapa elemen 6>>> _Hampir semua hal tentang pengindeksan string berfungsi serupa untuk daftar. Misalnya, indeks daftar negatif dihitung dari akhir daftar Pengindeksan Daftar Negatif>>> _Mengiris juga berfungsi. Jika 6 adalah daftar, ekspresi 9 mengembalikan bagian 6 dari indeks 1 ke, tetapi tidak termasuk, indeks 2>>> 0Fitur lain dari pemotongan string bekerja secara analog untuk pemotongan daftar juga
Beberapa operator Python dan fungsi bawaan juga dapat digunakan dengan daftar dengan cara yang serupa dengan string
Bukan kebetulan bahwa string dan daftar berperilaku sangat mirip. Keduanya adalah kasus khusus dari jenis objek yang lebih umum yang disebut iterable, yang akan Anda temukan lebih detail di tutorial mendatang tentang iterasi pasti. Omong-omong, dalam setiap contoh di atas, daftar selalu ditetapkan ke variabel sebelum operasi dilakukan padanya. Tetapi Anda juga dapat mengoperasikan daftar literal >>> 0Dalam hal ini, Anda dapat melakukan hal yang sama dengan string literal >>> 1Hilangkan iklanDaftar Bisa BersarangAnda telah melihat bahwa elemen dalam daftar dapat berupa objek apa saja. Itu termasuk daftar lain. Daftar dapat berisi sublist, yang pada gilirannya dapat berisi sublist itu sendiri, dan seterusnya hingga kedalaman yang sewenang-wenang Pertimbangkan contoh (memang dibuat-buat) ini >>> 2Struktur objek yang _6 referensi digambarkan di bawah iniDaftar Bersarang 7, 8, dan 9 adalah string, masing-masing panjangnya satu karakter>>> 3Tapi _00 dan 01 adalah subdaftar>>> 4Untuk mengakses item dalam sublist, cukup tambahkan indeks tambahan >>> 5 02 adalah sublist lain, jadi menambahkan satu indeks lagi akan mengakses elemen-elemennya>>> 6Tidak ada batasan, sependek memori komputer Anda, hingga kedalaman atau kerumitan daftar yang dapat disarangkan dengan cara ini Semua sintaks biasa mengenai indeks dan pemotongan juga berlaku untuk sublist >>> 7Namun, ketahuilah bahwa operator dan fungsi hanya berlaku untuk daftar di tingkat yang Anda tentukan dan tidak bersifat rekursif. Pertimbangkan apa yang terjadi jika Anda menanyakan panjang 6 menggunakan 3>>> 8 6 hanya memiliki lima elemen—tiga string dan dua sublist. Elemen individual dalam sublist tidak diperhitungkan dalam panjang 6Anda akan menghadapi situasi serupa saat menggunakan operator 9>>> 9 08 bukan salah satu elemen di 6 atau 00. Itu hanya secara langsung elemen dalam sublist 02. Elemen individu dalam sublist tidak dihitung sebagai elemen dari daftar indukHilangkan iklanDaftar Bisa DiubahSebagian besar tipe data yang Anda temui sejauh ini adalah tipe atom. Objek integer atau float, misalnya, adalah unit primitif yang tidak dapat dipecah lebih lanjut. Jenis ini tidak dapat diubah, artinya tidak dapat diubah setelah ditetapkan. Tidak masuk akal untuk berpikir untuk mengubah nilai bilangan bulat. Jika Anda menginginkan bilangan bulat yang berbeda, Anda cukup menetapkan bilangan bulat yang berbeda Sebaliknya, tipe string adalah tipe komposit. String dapat direduksi menjadi bagian yang lebih kecil—karakter komponen. Mungkin masuk akal untuk berpikir tentang mengubah karakter dalam sebuah string. Tapi kamu tidak bisa. Dalam Python, string juga tidak dapat diubah Daftar ini adalah tipe data mutable pertama yang Anda temui. Setelah daftar dibuat, elemen dapat ditambahkan, dihapus, digeser, dan dipindahkan sesuka hati. Python menyediakan berbagai cara untuk memodifikasi daftar Memodifikasi Nilai Daftar TunggalSatu nilai dalam daftar dapat diganti dengan pengindeksan dan penugasan sederhana >>> 0Anda mungkin ingat dari tutorial bahwa Anda tidak dapat melakukan ini dengan sebuah string >>> 1Item daftar dapat dihapus dengan perintah 12>>> 2Memodifikasi Beberapa Nilai DaftarBagaimana jika Anda ingin mengubah beberapa elemen yang berdekatan dalam daftar sekaligus? _3Sekali lagi, untuk saat ini, pikirkan iterable sebagai daftar. Penetapan ini menggantikan bagian tertentu dari 6 dengan 14>>> 4Jumlah elemen yang dimasukkan tidak harus sama dengan jumlah yang diganti. Python hanya menambah atau mengecilkan daftar sesuai kebutuhan Anda dapat menyisipkan banyak elemen sebagai pengganti satu elemen—cukup gunakan potongan yang menunjukkan hanya satu elemen >>> 5Perhatikan bahwa ini tidak sama dengan mengganti elemen tunggal dengan daftar >>> 6Anda juga dapat memasukkan elemen ke dalam daftar tanpa menghapus apa pun. Cukup tentukan irisan bentuk _15 (irisan dengan panjang nol) pada indeks yang diinginkan>>> 7Anda dapat menghapus banyak elemen dari tengah daftar dengan menugaskan irisan yang sesuai ke daftar kosong. Anda juga dapat menggunakan pernyataan _12 dengan potongan yang sama>>> 8Mengawali atau Menambahkan Item ke DaftarItem tambahan dapat ditambahkan ke awal atau akhir daftar menggunakan operator rangkaian 1 atau 18>>> 9Perhatikan bahwa daftar harus digabungkan dengan daftar lain, jadi jika Anda ingin menambahkan hanya satu elemen, Anda perlu menentukannya sebagai daftar tunggal >>> 0Catatan. Secara teknis, tidak tepat mengatakan sebuah daftar harus digabungkan dengan daftar lain. Lebih tepatnya, daftar harus digabungkan dengan objek yang dapat diubah. Tentu saja, daftar dapat diubah, sehingga berfungsi untuk menggabungkan daftar dengan daftar lain String juga dapat diubah. Tapi perhatikan apa yang terjadi saat Anda menggabungkan string ke dalam daftar >>> 1Hasil ini mungkin tidak seperti yang Anda harapkan. Ketika string diulang, hasilnya adalah daftar karakter komponennya. Dalam contoh di atas, apa yang digabungkan ke daftar 6 adalah daftar karakter dalam string 20Jika Anda benar-benar ingin menambahkan string tunggal 20 ke akhir daftar, Anda perlu menentukannya sebagai daftar tunggal>>> 2Jika ini tampak misterius, jangan terlalu khawatir. Anda akan belajar tentang seluk beluk iterables dalam tutorial tentang iterasi pasti Metode yang Memodifikasi DaftarTerakhir, Python menyediakan beberapa metode bawaan yang dapat digunakan untuk mengubah daftar. Informasi tentang metode ini dirinci di bawah ini Catatan. Metode string yang Anda lihat di tutorial sebelumnya tidak mengubah string target secara langsung. Itu karena string tidak dapat diubah. Sebagai gantinya, metode string mengembalikan objek string baru yang dimodifikasi seperti yang diarahkan oleh metode tersebut. Mereka membiarkan string target asli tidak berubah >>> 3Metode daftar berbeda. Karena daftar dapat diubah, metode daftar yang ditampilkan di sini mengubah daftar target di tempatnya _22
22 menambahkan objek 24 ke akhir daftar 6>>> 4Ingat, metode daftar memodifikasi daftar target di tempatnya. Mereka tidak mengembalikan daftar baru >>> 5Ingatlah bahwa ketika operator 1 digunakan untuk menggabungkan ke daftar, jika operan target adalah iterable, maka elemennya akan dipisahkan dan ditambahkan ke daftar satu per satu>>> 6Metode _27 tidak berfungsi seperti itu. Jika iterable ditambahkan ke daftar dengan 27, iterable ditambahkan sebagai objek tunggal>>> 7Jadi, dengan 27, Anda dapat menambahkan string sebagai satu kesatuan>>> 8 _30
Ya, ini mungkin yang Anda pikirkan. 31 juga menambah akhir daftar, tetapi argumen diharapkan menjadi iterable. Item di _14 ditambahkan satu per satu>>> 9Dengan kata lain, _31 berperilaku seperti operator 1. Lebih tepatnya, karena mengubah daftar pada tempatnya, ia berperilaku seperti operator 18>>> 0 _36
36 menyisipkan objek 24 ke dalam daftar 6 pada 40 yang ditentukan. Mengikuti pemanggilan metode, 41 adalah 24, dan elemen daftar yang tersisa didorong ke kanan>>> 1 _43
43 menghapus objek 24 dari daftar 6. Jika 24 tidak ada di 6, pengecualian akan dimunculkan>>> 2 _49
Metode ini berbeda dari _50 dalam dua hal
51 hanya menghapus item terakhir dalam daftar>>> 3Jika parameter 40 opsional ditentukan, item pada indeks tersebut akan dihapus dan dikembalikan. 40 mungkin negatif, seperti pengindeksan string dan daftar>>> 4 40 default ke 55, jadi 56 setara dengan 51Hilangkan iklanDaftar DinamisTutorial ini dimulai dengan daftar enam karakteristik yang menentukan daftar Python. Yang terakhir adalah daftar itu dinamis. Anda telah melihat banyak contohnya pada bagian di atas. Saat item ditambahkan ke daftar, itu tumbuh sesuai kebutuhan >>> 5Demikian pula, daftar menyusut untuk mengakomodasi penghapusan item >>> 6Tuple PythonPython menyediakan tipe lain yang merupakan kumpulan objek yang dipesan, yang disebut tuple Pengucapan bervariasi tergantung pada siapa Anda bertanya. Beberapa melafalkannya seolah-olah dieja "too-ple" (berima dengan "Mott the Hoople"), dan yang lain seolah-olah dieja "tup-ple" (berima dengan "luwes"). Kecenderungan saya adalah yang terakhir, karena mungkin berasal dari asal yang sama dengan "quintuple", "sextuple", "octuple", dan seterusnya, dan semua orang yang saya kenal mengucapkan yang terakhir ini seolah-olah berirama dengan "kenyal". ” Mendefinisikan dan Menggunakan TupleTupel identik dengan daftar dalam segala hal, kecuali untuk properti berikut
Berikut adalah contoh singkat yang menunjukkan definisi tuple, pengindeksan, dan pemotongan >>> 7Tidak pernah takut. Mekanisme pembalikan string dan daftar favorit kami juga berfungsi untuk tupel >>> 8Catatan. Meskipun tupel didefinisikan menggunakan tanda kurung, Anda masih mengindeks dan mengiris tupel menggunakan tanda kurung siku, seperti untuk string dan daftar Segala sesuatu yang telah Anda pelajari tentang daftar—mereka diurutkan, mereka dapat berisi objek arbitrer, mereka dapat diindeks dan diiris, mereka dapat disarangkan—juga berlaku untuk tupel. Tetapi mereka tidak dapat dimodifikasi >>> 9Mengapa menggunakan tuple daripada daftar?
Dalam sesi REPL Python, Anda dapat menampilkan nilai beberapa objek secara bersamaan dengan memasukkannya langsung di prompt 60, dipisahkan dengan koma>>> 0Python menampilkan respons dalam tanda kurung karena secara implisit menginterpretasikan input sebagai tuple Ada satu keanehan tentang definisi tuple yang harus Anda ketahui. Tidak ada ambiguitas saat mendefinisikan tupel kosong, atau tuple dengan dua elemen atau lebih. Python tahu Anda sedang mendefinisikan tuple >>> 1>>> 2Tapi apa yang terjadi ketika Anda mencoba mendefinisikan sebuah tuple dengan satu item >>> 3Doh. Karena tanda kurung juga digunakan untuk mendefinisikan prioritas operator dalam ekspresi, Python mengevaluasi ekspresi 61 hanya sebagai bilangan bulat 62 dan membuat objek ________2______63. Untuk memberi tahu Python bahwa Anda benar-benar ingin mendefinisikan tuple tunggal, sertakan tanda koma ( 64) tepat sebelum tanda kurung penutup>>> 4Anda mungkin tidak perlu sering mendefinisikan singleton tuple, tetapi harus ada cara Saat Anda menampilkan tuple tunggal, Python menyertakan koma, untuk mengingatkan Anda bahwa itu adalah tuple >>> 5Hilangkan iklanTuple Assignment, Packing, dan UnpackingSeperti yang telah Anda lihat di atas, tupel literal yang berisi beberapa item dapat ditetapkan ke satu objek >>> 6Saat ini terjadi, seolah-olah item dalam tuple telah “dikemas” ke dalam objek Kemasan Tupel>>> 7Jika objek yang “dikemas” itu selanjutnya ditugaskan ke tuple baru, masing-masing item akan menjadi objek di dalam tuple Pembongkaran Tuple>>> 8Saat membongkar, jumlah variabel di sebelah kiri harus sesuai dengan jumlah nilai di tuple >>> 9Mengemas dan membongkar dapat digabungkan menjadi satu pernyataan untuk membuat tugas majemuk >>> 0Sekali lagi, jumlah elemen dalam tupel di sebelah kiri penugasan harus sama dengan nomor di sebelah kanan >>> 1Dalam tugas seperti ini dan beberapa situasi lainnya, Python memungkinkan tanda kurung yang biasanya digunakan untuk menunjukkan sebuah tuple ditinggalkan >>> 2Ini berfungsi sama apakah tanda kurung disertakan atau tidak, jadi jika Anda ragu apakah itu diperlukan, lanjutkan dan sertakan Penugasan Tuple memungkinkan untuk sedikit Python idiomatis yang aneh. Seringkali saat memprogram, Anda memiliki dua variabel yang nilainya perlu Anda tukar. Di sebagian besar bahasa pemrograman, perlu menyimpan salah satu nilai dalam variabel sementara saat pertukaran terjadi seperti ini >>> 3Di Python, swap dapat dilakukan dengan satu penugasan tupel >>> 4Seperti yang diketahui oleh siapa pun yang pernah menukar nilai menggunakan variabel sementara, mampu melakukannya dengan cara ini di Python adalah puncak pencapaian teknologi modern. Ini tidak akan pernah menjadi lebih baik dari ini Hilangkan iklanKesimpulanTutorial ini mencakup properti dasar daftar dan tupel Python, dan cara memanipulasinya. Anda akan menggunakan ini secara ekstensif dalam pemrograman Python Anda Salah satu karakteristik utama dari daftar adalah urutannya. Urutan elemen dalam daftar adalah properti intrinsik dari daftar itu dan tidak berubah, kecuali daftar itu sendiri diubah. (Hal yang sama berlaku untuk tupel, kecuali tentu saja tidak dapat dimodifikasi. ) Tutorial berikutnya akan memperkenalkan kamus Python. tipe data komposit yang tidak terurut. Baca terus Ikuti Kuis. Uji pengetahuan Anda dengan kuis "Daftar dan Tuple Python" interaktif kami. Setelah selesai Anda akan menerima skor sehingga Anda dapat melacak kemajuan belajar Anda dari waktu ke waktu Ikuti Kuis » « String dengan Python Kamus dengan Python » Tandai sebagai Selesai Tonton Sekarang Tutorial ini memiliki kursus video terkait yang dibuat oleh tim Real Python. Tonton bersama dengan tutorial tertulis untuk memperdalam pemahaman Anda. Daftar dan Tuple dengan Python 🐍 Trik Python 💌 Dapatkan Trik Python singkat & manis yang dikirim ke kotak masuk Anda setiap beberapa hari. Tidak pernah ada spam. Berhenti berlangganan kapan saja. Dikuratori oleh tim Real Python Kirimi Saya Trik Python » Tentang John Stutz John adalah seorang Pythonista yang rajin dan anggota tim tutorial Real Python » Lebih lanjut tentang YohanesSetiap tutorial di Real Python dibuat oleh tim pengembang sehingga memenuhi standar kualitas tinggi kami. Anggota tim yang mengerjakan tutorial ini adalah Aldren Dan Joanna Master Keterampilan Python Dunia Nyata Dengan Akses Tanpa Batas ke Python Nyata Bergabunglah dengan kami dan dapatkan akses ke ribuan tutorial, kursus video langsung, dan komunitas pakar Pythonista Tingkatkan Keterampilan Python Anda » Guru Keterampilan Python Dunia Nyata Bergabunglah dengan kami dan dapatkan akses ke ribuan tutorial, kursus video langsung, dan komunitas ahli Pythonista Tingkatkan Keterampilan Python Anda » Bagaimana menurut anda? Nilai artikel ini Tweet Bagikan Bagikan EmailApa takeaway # 1 Anda atau hal favorit yang Anda pelajari? Kiat Berkomentar. Komentar yang paling berguna adalah yang ditulis dengan tujuan belajar dari atau membantu siswa lain. dan dapatkan jawaban atas pertanyaan umum di portal dukungan kami Bagaimana Anda mengkuadratkan setiap elemen dalam tuple dengan Python?Bagaimana Anda menyusun tupel python? . + 4. Ini adalah bagaimana tupel dikuadratkan dengan python. . + 1. Anda juga bisa melakukannya. cetak (matematika. sqrt(sum(v*v untuk v di p1+p2))). format yang benar. cetak (matematika. sqrt(((p1[0]-p2[0])**2)+((p1[1]-p2[1])**2))) 19 Juli 2022, 2. 21 pagi Bagaimana Anda membuat tuple dengan Python?Tuple dibuat dengan menempatkan semua item (elemen) di dalam tanda kurung () , dipisahkan dengan koma . Tanda kurung bersifat opsional, namun merupakan praktik yang baik untuk menggunakannya. Tuple dapat memiliki sejumlah item dan mungkin dari jenis yang berbeda (integer, float, list, string, dll. ).
Bagaimana Anda mencetak bentuk tuple dengan Python?Bentuk tuple atau daftar Python sederhana dapat diperoleh dengan fungsi len() bawaan . len() akan mengembalikan bilangan bulat yang menjelaskan jumlah objek dalam tupel atau daftar.
Bagaimana Anda mencetak kuadrat angka dengan Python?Ketiga cara tersebut adalah. . **, operator listrik fungsi pow() bawaan matematika. pow() dari modul matematika |