Een lijst naar een bestand schrijven met Python
Is dit de schoonste manier om een lijst naar een bestand te schrijven, omdat writelines()
geen newline-tekens invoegt?
file.writelines(["%s\n" % item for item in list])
Het lijkt erop dat er een standaard manier zou zijn...
593
3
Je kunt een lus gebruiken:
In Python 2, kunt u ook gebruik maken van
Als je'een enkele functie wilt aanroepen, verwijder dan op zijn minst de vierkante haken
[]
, zodat de af te drukken strings één voor één worden gemaakt (een genexp in plaats van een listcomp) -- geen reden om al het geheugen in beslag te nemen dat nodig is om de hele lijst met strings te materialiseren.Wat ga je met het bestand doen? Bestaat dit bestand voor mensen, of andere programma's met duidelijke interoperabiliteitseisen?
Als je alleen maar probeert een lijst naar schijf te serialiseren voor later gebruik door dezelfde python app, zou je de lijst moeten pickleing.
Om het terug te lezen:
De eenvoudigste manier is:
Je zou ervoor kunnen zorgen dat alle items in de itemlijst strings zijn met behulp van een generator expressie:
Onthoud dat alle
itemlist
lijsten in het geheugen moeten staan, dus, let op het geheugen gebruik.