Pertanyaan yang diberi tag «list-comprehension»

Konstruksi sintaksis yang menyediakan cara ringkas untuk membuat daftar dengan gaya yang mirip dengan notasi pembuat kumpulan matematika. Karena beberapa bahasa mendukung pemahaman daftar, harap gunakan tag ini bersama dengan tag bahasa pemrograman.


6
Bagaimana menangani pengecualian dalam pemahaman daftar?
Saya memiliki beberapa pemahaman daftar dengan Python di mana setiap iterasi dapat menimbulkan pengecualian. Misalnya , jika saya memiliki: eggs = (1,3,0,3,2) [1/egg for egg in eggs] Saya akan mendapatkan ZeroDivisionError pengecualian di elemen ke-3. Bagaimana saya menangani pengecualian ini dan melanjutkan eksekusi pemahaman daftar? Satu-satunya cara yang bisa saya …

6
Pemahaman daftar mengembalikan nama bahkan setelah cakupan pemahaman. Apakah ini benar?
Pemahaman mengalami beberapa interaksi tak terduga dengan pelingkupan. Apakah ini perilaku yang diharapkan? Saya punya metode: def leave_room(self, uid): u = self.user_by_id(uid) r = self.rooms[u.rid] other_uids = [ouid for ouid in r.users_by_id.keys() if ouid != u.uid] other_us = [self.user_by_id(uid) for uid in other_uids] r.remove_user(uid) # OOPS! uid has been re-bound …

10
Cara pythonic untuk mencetak item daftar
Saya ingin tahu apakah ada cara yang lebih baik untuk mencetak semua objek dalam daftar Python daripada ini: myList = [Person("Foo"), Person("Bar")] print("\n".join(map(str, myList))) Foo Bar Saya membaca cara ini tidak terlalu baik: myList = [Person("Foo"), Person("Bar")] for p in myList: print(p) Bukankah ada sesuatu seperti: print(p) for p in …

7
Apakah Pythonic menggunakan pemahaman daftar hanya untuk efek samping?
Pikirkan tentang fungsi yang saya panggil untuk efek sampingnya, bukan nilai yang dikembalikan (seperti mencetak ke layar, memperbarui GUI, mencetak ke file, dll.). def fun_with_side_effects(x): ...side effects... return y Sekarang, apakah Pythonic menggunakan pemahaman daftar untuk memanggil fungsi ini: [fun_with_side_effects(x) for x in y if (...conditions...)] Perhatikan bahwa saya tidak …


2
Apakah loop-for pada panda benar-benar buruk? Kapan saya harus peduli?
Apakah forloop benar-benar "buruk"? Jika tidak, dalam situasi apa mereka lebih baik daripada menggunakan pendekatan "vektorisasi" yang lebih konvensional? 1 Saya akrab dengan konsep "vektorisasi", dan bagaimana panda menggunakan teknik vektor untuk mempercepat komputasi. Fungsi vektorisasi menyiarkan operasi ke seluruh rangkaian atau DataFrame untuk mencapai percepatan yang jauh lebih besar …



17
Pemahaman daftar di Ruby
Untuk melakukan yang setara dengan pemahaman daftar Python, saya melakukan yang berikut: some_array.select{|x| x % 2 == 0 }.collect{|x| x * 3} Apakah ada cara yang lebih baik untuk melakukan ini ... mungkin dengan satu pemanggilan metode?



3
Apa arti backticks bagi penerjemah python: `num`
Saya bermain-main dengan pemahaman daftar dan saya menemukan cuplikan kecil ini di situs lain: return ''.join([`num` for num in xrange(loop_count)]) Saya menghabiskan beberapa menit mencoba untuk mereplikasi fungsi (dengan mengetik) sebelum menyadari `num`bit itu merusaknya. Apa yang dilakukan dengan menyertakan pernyataan dalam karakter tersebut? Dari apa yang saya lihat itu …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.