Dalam Python, Anda dapat memiliki beberapa iterator dalam pemahaman daftar, seperti
[(x,y) for x in a for y in b]
untuk beberapa urutan yang sesuai a dan b. Saya menyadari semantik loop bersarang dari pemahaman daftar Python.
Pertanyaan saya adalah: Bisakah satu iterator dalam pemahaman merujuk ke yang lain? Dengan kata lain: Dapatkah saya memiliki sesuatu seperti ini:
[x for x in a for a in b]
di mana nilai saat ini dari loop luar adalah iterator bagian dalam?
Sebagai contoh, jika saya memiliki daftar bersarang:
a=[[1,2],[3,4]]
seperti apa ekspresi pemahaman daftar untuk mencapai hasil ini:
[1,2,3,4]
?? (Tolong cantumkan jawaban pemahaman saja, karena ini yang ingin saya ketahui).
[x for b in a for x in b]
Ini selalu disadap tentang python. Sintaks ini sangat mundur. Bentuk umumx for x in y
selalu memiliki variabel langsung setelah untuk, diumpankan ke ekspresi di sebelah kiri untuk. Segera setelah Anda melakukan pemahaman ganda, variabel iterated terakhir Anda tiba-tiba begitu "jauh". Ini aneh, dan tidak membaca sama sekali