Jika Anda pindah ke Python dari C atau Java, Anda mungkin bingung dengan loop 1 2 3 4 52 Python. Python sebenarnya tidak memiliki for loop… setidaknya bukan jenis 1 2 3 4 52 loop yang sama yang dimiliki oleh bahasa berbasis C. Loop 1 2 3 4 52 Python sebenarnya adalah foreach loop Show
Pada artikel ini saya akan membandingkan 1 2 3 4 52 loop Python dengan yang ada di bahasa lain dan mendiskusikan cara biasa kita memecahkan masalah umum dengan 1 2 3 4 52 loop di Python Untuk loop dalam bahasa lainSebelum kita melihat loop Python, mari kita lihat loop for di JavaScript 1 2 3 4
Loop JavaScript ini terlihat hampir identik di C/C++ dan Java Dalam lingkaran ini kita
Mengulang dengan PythonSekarang mari kita bicara tentang loop di Python. Pertama kita akan melihat dua metode perulangan yang sedikit lebih familiar dan kemudian kita akan melihat cara idiomatis untuk mengulang dengan Python ketikaJika kita ingin meniru perilaku loop 1 2 3 4 52 C-style tradisional kita dengan Python, kita bisa menggunakan loop 1 2 3 4 59 1 2 3 4 5
Ini melibatkan 4 langkah yang sama dengan 1 2 3 4 52 loop dalam bahasa lain (perhatikan bahwa kami menyetel, memeriksa, dan menambahkan 1 2 3 4 57) tetapi tidak sekompak Metode perulangan dengan Python ini sangat jarang rentang panjangSaya sering melihat programmer Python baru mencoba membuat ulang 1 2 3 4 52 tradisional dengan cara yang sedikit lebih kreatif di Python 1 2 3
Ini pertama-tama membuat rentang yang sesuai dengan indeks dalam daftar kami ( 3 hingga 4). Kita dapat mengulang rentang ini menggunakan loop for-in Python (benar-benar foreach)Ini memberi kami indeks dari setiap item dalam daftar 5 kami, yang merupakan cara kerja loop C-style 1 2 3 4 52. Untuk mendapatkan warna sebenarnya, kami menggunakan 7untuk masuk. cara biasaMetode while loop dan range-of-len bergantung pada perulangan indeks. Tapi kami sebenarnya tidak peduli dengan indeks. kami hanya menggunakan indeks ini untuk tujuan mengambil elemen dari daftar kami Karena kita tidak terlalu peduli dengan indeks di loop kita, ada metode perulangan yang jauh lebih sederhana yang bisa kita gunakan 1 2 3
Jadi alih-alih mengambil indeks item dan mencari setiap elemen, kita bisa mengulang daftar kita menggunakan loop for-in biasa Dua metode lain yang kita diskusikan kadang-kadang disebut sebagai anti-pola karena merupakan pola pemrograman yang secara luas dianggap unidiomatis. Bagaimana jika kita membutuhkan indeks?Bagaimana jika kita benar-benar membutuhkan indeks? rentang panjangKita bisa menggunakan _8 dan kemudian mencari indeks seperti sebelumnya1 2 3
Tapi ada cara yang lebih idiomatis untuk menyelesaikan tugas ini. gunakan fungsi _9menghitungFungsi _9 bawaan Python memungkinkan kita untuk mengulang daftar dan mengambil indeks dan nilai setiap item dalam daftar1 2 3 1Fungsi _9 memberi kita iterable di mana setiap elemen adalah tupel yang berisi indeks item dan nilai item asliFungsi ini dimaksudkan untuk menyelesaikan tugas
Jadi kapan pun kita membutuhkan indeks item saat mengulang, kita harus memikirkan 9Catatan. opsi 1 2 3_3 ke 9 di sini adalah opsional. Jika kami tidak menentukan ini, kami akan mulai menghitung pada 3 secara defaultBagaimana jika kita perlu mengulang banyak hal?Seringkali saat kita menggunakan indeks daftar, itu untuk mencari sesuatu di daftar lain menghitungMisalnya, di sini kita mengulang dua daftar sekaligus menggunakan indeks untuk mencari elemen yang sesuai 1 2 3 4 5 3Perhatikan bahwa kami hanya memerlukan indeks dalam skenario ini karena kami menggunakannya untuk mencari elemen pada indeks yang sama di daftar kedua kami. Yang benar-benar kami inginkan adalah mengulang dua daftar secara bersamaan. indeks hanya menyediakan sarana untuk melakukan itu zipKami sebenarnya tidak peduli dengan indeks saat mengulang di sini. Tujuan sebenarnya kami adalah mengulang dua daftar sekaligus. Kebutuhan ini cukup umum sehingga ada fungsi bawaan khusus untuk ini Fungsi 1 2 3_6 Python memungkinkan kita untuk mengulang beberapa daftar sekaligus 1 2 3 4 5Fungsi 1 2 3_6 mengambil banyak daftar dan mengembalikan iterable yang menyediakan tuple dari elemen yang sesuai dari setiap daftar saat kita mengulanginya Perhatikan bahwa 1 2 3_6 dengan daftar ukuran berbeda akan berhenti setelah daftar terpendek kehabisan item. Anda mungkin ingin memeriksa apakah Anda memerlukan perilaku yang berbeda. Perhatikan juga bahwa 1 2 3_6 di Python 2 mengembalikan daftar tetapi 1 2 36 di Python 3 mengembalikan iterable malas. Dalam Python 2, _1 setara dengan fungsi Python 3 1 2 36 yang lebih baru Lembar contekan berulangBerikut adalah lembar contekan perulangan yang sangat singkat yang dapat membantu Anda mengingat konstruk pilihan untuk masing-masing dari ketiga skenario perulangan ini Ulangi satu daftar dengan for-in reguler 6 7Ulangi beberapa daftar sekaligus dengan 1 2 36 6 9Ulangi daftar sambil melacak indeks dengan 9 61 2 3 4 51 KesimpulanJika Anda tergoda untuk menggunakan 5 atau penghitung lingkaran, pikirkan apakah Anda dapat membingkai ulang masalah Anda untuk memungkinkan penggunaan 1 2 36 atau 9 (atau kombinasi keduanya)Bahkan, jika Anda menemukan diri Anda meraih 9, pikirkan apakah Anda benar-benar membutuhkan indeks sama sekali. Sangat jarang membutuhkan indeks dengan Python
Jika Anda kesulitan menemukan cara terbaik untuk mengulang, coba gunakan lembar contekan di atas Latihan membuat sempurnaAnda tidak belajar dengan meletakkan informasi di kepala Anda, Anda belajar dengan mencoba mengambil informasi dari kepala Anda. Jadi Anda baru saja membaca artikel tentang sesuatu yang baru, tetapi Anda belum mempelajarinya Tulis beberapa kode yang menggunakan 9 dan 1 2 36 hari ini dan kemudian kuis diri Anda besok tentang berbagai cara perulangan dengan Python. Anda harus melatih keterampilan ini jika ingin benar-benar mengingatnya Jika Anda ingin mendapatkan pengalaman langsung berlatih Python setiap minggu, saya memiliki layanan pengembangan keterampilan Python yang harus Anda pertimbangkan untuk bergabung. Jika Anda mendaftar ke Python Morsels, saya akan memberi Anda latihan pengulangan Python sekarang dan kemudian saya akan mengirimi Anda satu latihan Python baru setiap minggu setelah itu Dapatkan latihan Python Morsels sayaSaya tidak akan membagikan info kepada Anda dengan orang lain (lihat Kebijakan Privasi Python Morsels untuk detailnya) Isi formulir di atas untuk mendaftar ke Python Morsels, berlatih dengan fungsi 1 2 36, dan mulai tingkatkan keterampilan Python Anda setiap minggu Bagaimana Anda menampilkan indeks dengan Python?Untuk memfasilitasi ini, Python memiliki fungsi bawaan yang disebut index() . Fungsi ini mengambil elemen sebagai argumen dan mengembalikan indeks. Dengan menggunakan fungsi ini, kita dapat menemukan indeks suatu elemen dalam daftar dengan Python.
Bagaimana cara kerja indeks () di Python?Metode index() Python membantu Anda menemukan posisi indeks suatu elemen atau item dalam string karakter atau daftar item. It spits out the lowest possible index of the specified element in the list. In case the specified item does not exist in the list, a ValueError is returned.
Bagaimana cara memeriksa indeks untuk loop Python?Kita dapat mengakses indeks dengan Python dengan menggunakan. . Menggunakan elemen indeks Menggunakan menghitung() Menggunakan Pemahaman Daftar Menggunakan zip() |