Rumah > pembangunan bahagian belakang > Tutorial Python > Apakah Maksud Gelung `untuk-dalam` Python yang Didahului oleh Pembolehubah dalam Pemahaman Senarai dan Bagaimana Ia Berfungsi?

Apakah Maksud Gelung `untuk-dalam` Python yang Didahului oleh Pembolehubah dalam Pemahaman Senarai dan Bagaimana Ia Berfungsi?

Barbara Streisand
Lepaskan: 2024-11-28 16:08:11
asal
225 orang telah melayarinya

What Does a Python `for-in` Loop Preceded by a Variable in List Comprehension Mean and How Does It Work?

Gelung Python untuk-dalam Didahului oleh Pembolehubah

Pertimbangkan kod berikut:

foo = [x for x in bar if x.occupants > 1]
Salin selepas log masuk

Kod ini timbul soalan: "Apakah maksudnya, dan bagaimana ia berfungsi?"

Untuk memahami perkara ini membina, kita perlu menyelidiki sintaks pemahaman senarai Python. Pemahaman senarai ialah cara padat untuk menjana senarai dengan mengulang koleksi sedia ada sambil menapis dan mengubah elemen secara pilihan berdasarkan keadaan.

Secara sintaksis, pemahaman senarai terdiri daripada tiga bahagian:

  1. Ungkapan: Ungkapan yang mewakili unsur-unsur yang akan ditambahkan pada senarai.
  2. gelung untuk-dalam dengan pembolehubah: Meratakan koleksi input dan menetapkan setiap elemen kepada pembolehubah yang ditentukan.
  3. penyataan if (pilihan) : Menapis elemen berdasarkan syarat yang ditentukan.

Dalam kod contoh, gelung for-in berulang atas setiap elemen x dalam bar koleksi. Ungkapan x.penghuni > 1 dinilai untuk setiap elemen, dan jika ia menilai kepada Benar, elemen x ditambah pada senarai foo yang terhasil. Proses ini serupa dengan gelung biasa dengan keadaan penapis tambahan.

MATLAB yang setara:

foo = bar(bar.occupants > 1);
Salin selepas log masuk

Haskell setara:

foo = [x | x <- bar, x.occupants > 1]
Salin selepas log masuk

Atas ialah kandungan terperinci Apakah Maksud Gelung `untuk-dalam` Python yang Didahului oleh Pembolehubah dalam Pemahaman Senarai dan Bagaimana Ia Berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan