[Python] [python] escludere righe vuote o commentate

Marco Giusti marco.giusti a posteo.de
Lun 6 Feb 2023 10:43:28 CET


On 03.02.2023 14:15, Andrea D'Amore wrote:
> 
> Oppure in maniera "più funzionale"
> 
>     with open(filename) as file:
>         clean = filter(lambda x: x and not x.startswith("#"),
> map(lambda x: x.strip(), open(filename)))
> 
> La seconda ti dà un generatore, te lo espandi con list() se ti serve
> ma in genere meglio ritardare il loro consumo a quando ti serve
> effettivamente.

Solo una nota a proposito di questa soluzione. Se il generatore
non e' consumato dentro il blocco with, diventa inusable. All'uscita dal
blocco il file viene chiuso e alla prima iterazione, si cerca di leggere
da un file chiuso.



Maggiori informazioni sulla lista Python