Document usage of comprehensions with multiple if clauses
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 77.2k
- Fork
- 35.9k
- Metriche di merge delle PR
- Metriche PR in attesa
Descrizione
Documentation
As noted in the documentation for list comprehensions (and also in the reference docs on expressions, but not in the glossary which refers to an "if clause" in the singular), list/set/dict comprehensions can accept zero or more if clauses like so:
[i for i in range(10) if i % 2 if i % 3]
Looking at the bytecode generated with python -m dis, this appears to be strictly equivalent to:
[i for i in range(10) if i % 2 and i % 3]
(The last if was replaced by and)
It would be nice if this was documented, and ideally with examples.
I'm also personally curious why that feature exists so if someone could point me to an explanation I'd appreciate it. I didn't find anything in what I believe is the original PEP for list comprehensions (PEP 202).
Linked PRs
- gh-138217
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia esaminando la PR collegata gh-138217, quindi confronta le sezioni del tutorial sulle list comprehensions, del riferimento alle espressioni e del glossario indicate nell’issue. Il lavoro è completato quando la documentazione spiega che le comprehensions supportano più clausole if e include un esempio rappresentativo, aggiungendo la motivazione se i riferimenti esistenti la supportano.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- documentation
- Tipo di issue
- Documentazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 35/100