Questions marquées «list-comprehension»

Une construction syntaxique qui fournit un moyen concis de créer des listes dans un style similaire à la notation mathématique du générateur d'ensemble. Étant donné que plusieurs langages prennent en charge la compréhension de liste, veuillez utiliser cette balise en conjonction avec la balise d'un langage de programmation.



6
La compréhension de liste relie les noms même après l'étendue de la compréhension. Est-ce correct?
Les compréhensions ont des interactions inattendues avec la portée. Est-ce le comportement attendu? J'ai une méthode: 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 …


7
Est-ce pythonique d'utiliser les compréhensions de liste uniquement pour les effets secondaires?
Pensez à une fonction que j'appelle pour ses effets secondaires, pas pour ses valeurs de retour (comme l'impression à l'écran, la mise à jour de l'interface graphique, l'impression dans un fichier, etc.). def fun_with_side_effects(x): ...side effects... return y Maintenant, est-ce Pythonic d'utiliser les compréhensions de liste pour appeler cette fonction: …


2
Les boucles for des pandas sont-elles vraiment mauvaises? Quand devrais-je m'en soucier?
Les forboucles sont-elles vraiment «mauvaises»? Sinon, dans quelle (s) situation (s) seraient-ils mieux que d'utiliser une approche «vectorisée» plus conventionnelle? 1 Je connais le concept de "vectorisation" et la manière dont les pandas utilisent des techniques vectorisées pour accélérer le calcul. Les fonctions vectorisées diffusent les opérations sur l'ensemble de …

3
Continuation de ligne pour les compréhensions de liste ou les expressions génératrices en python
Comment êtes-vous censé rompre une très longue liste de compréhension? [something_that_is_pretty_long for something_that_is_pretty_long in somethings_that_are_pretty_long] J'ai aussi vu quelque part des gens qui n'aiment pas utiliser «\» pour briser les lignes, mais qui n'ont jamais compris pourquoi. Quelle est la raison derrière cela?


17
Compréhension de liste en Ruby
Pour faire l'équivalent de la compréhension de liste Python, je fais ce qui suit: some_array.select{|x| x % 2 == 0 }.collect{|x| x * 3} Y a-t-il une meilleure façon de faire cela ... peut-être avec un seul appel de méthode?




En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.