Bagaimana saya bisa melakukan hal berikut dengan Python? row = [unicode(x.strip()) for x in row if x is not None else ''] Pada dasarnya: ganti semua Nones dengan string kosong, lalu menjalankan suatu
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.
Bagaimana saya bisa melakukan hal berikut dengan Python? row = [unicode(x.strip()) for x in row if x is not None else ''] Pada dasarnya: ganti semua Nones dengan string kosong, lalu menjalankan suatu
Apakah ada alasan untuk memilih menggunakan map()pemahaman daftar berlebihan atau sebaliknya? Apakah salah satu dari mereka umumnya lebih efisien atau secara umum dianggap lebih pythonic daripada yang
Saya ingin membuat serangkaian daftar, semua panjang bervariasi. Setiap daftar akan berisi elemen yang sama e, nwaktu yang diulang (di mana n= panjang daftar). Bagaimana cara membuat daftar, tanpa menggunakan pemahaman daftar [e for number in xrange(n)]untuk setiap
Kapan Anda harus menggunakan ekspresi generator dan kapan Anda harus menggunakan daftar pemahaman dalam Python? # Generator expression (x*2 for x in range(256)) # List comprehension [x*2 for x in
Apakah mungkin untuk membuat pemahaman kamus dengan Python (untuk kunci)? Tanpa pemahaman daftar, Anda dapat menggunakan sesuatu seperti ini: l = [] for n in range(1, 11): l.append(n) Kami dapat mempersingkat ini ke daftar pemahaman: l = [n for n in range(1, 11)]. Namun, katakan saya ingin...
Seperti yang kita semua tahu, ada pemahaman daftar, seperti [i for i in [1, 2, 3, 4]] dan ada pemahaman kamus, seperti {i:j for i, j in {1: 'a', 2: 'b'}.items()} tapi (i for i in (1, 2, 3)) akan berakhir di generator, bukan tuplepemahaman. Mengapa demikian? Dugaan saya adalah bahwa a...
Saya memiliki daftar panjang variabel dan saya sedang berusaha menemukan cara untuk menguji apakah item daftar yang sedang dievaluasi adalah string terpanjang yang terdapat dalam daftar. Dan saya menggunakan Python 2.6.1 Sebagai contoh: mylist = ['abc','abcdef','abcd'] for each in mylist: if...
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...
Saya punya daftar bersarang ini: l = [['40', '20', '10', '30'], ['20', '20', '20', '20', '20', '30', '20'], ['30', '20', '30', '50', '10', '30', '20', '20', '20'], ['100', '100'], ['100', '100', '100', '100', '100'], ['100', '100', '100', '100']] Sekarang, yang ingin saya lakukan adalah...
Memiliki iteratorobjek, apakah ada sesuatu yang lebih cepat, lebih baik atau lebih benar daripada pemahaman daftar untuk mendapatkan daftar objek yang dikembalikan oleh iterator? user_list = [user for user in
Ini lebih lanjut tentang sintaksis pemahaman daftar python. Saya memiliki pemahaman daftar yang menghasilkan daftar angka ganjil dari rentang tertentu: [x for x in range(1, 10) if x % 2] Ini membuat filter - Saya punya daftar sumber, tempat saya menghapus angka genap ( if x % 2). Saya ingin...
Bagaimana Anda mengakses variabel kelas lain dari pemahaman daftar dalam definisi kelas? Berikut ini berfungsi di Python 2 tetapi gagal dalam Python 3: class Foo: x = 5 y = [x for i in range(1)] Python 3.2 memberikan kesalahan: NameError: global name 'x' is not defined Mencoba Foo.xjuga...
Dalam hal kinerja dalam Python, apakah daftar-pemahaman, atau fungsi suka map(), filter()dan reduce()lebih cepat daripada untuk loop? Mengapa, secara teknis, mereka berjalan dalam kecepatan C , sedangkan untuk loop berjalan dalam kecepatan mesin virtual python ? Misalkan dalam game yang saya...
Saya mencoba membuat kamus dari file csv. Kolom pertama dari file csv berisi kunci unik dan kolom kedua berisi nilai. Setiap baris file csv mewakili kunci unik, pasangan nilai dalam kamus. Saya mencoba menggunakan csv.DictReaderdan csv.DictWriterkelas, tetapi saya hanya bisa mengetahui cara membuat...
Mari kita anggap saya memiliki daftar seperti ini: mylist = ["a","b","c","d"] Untuk mendapatkan nilai yang dicetak bersama dengan indeks mereka, saya dapat menggunakan enumeratefungsi Python seperti ini >>> for i,j in enumerate(mylist): ... print i,j ... 0 a 1 b 2 c 3
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...
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 =...
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:...
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...
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...