Programmeren

Hoe te werken met bestanden in Python

Hoe te werken met bestanden in Python

Python is een geweldige programmeertaal voor de meeste taken, zoals webontwikkeling, AI, automatisering of algemeen programmeren. Werken met bestanden en mappen is belangrijk omdat we ze moeten gebruiken om taken te automatiseren of gegevens en verschillende andere soortgelijke taken op te slaan.

Om te werken met bestanden met een speciaal formaat, zoals afbeeldingsbestanden, JSON-bestanden, PDF-, CSV-bestanden of databasebestanden, heeft python geweldige modules geschreven door geweldige programmeurs om onze taak gemakkelijk te maken. U kunt onze stapsgewijze zelfstudie bekijken over het werken met SQL-databasebestanden met behulp van python waarmee u SQLite kunt leren, wat een geweldige manier is om gegevens van python-programma's op te slaan en op te halen.

Voordat we beginnen, moeten we eerst Python in het systeem installeren. Als je het niet hebt geïnstalleerd, kun je onze handleiding over het installeren van python bekijken.

Werken met bestanden in Python

Bestanden zijn een belangrijk onderdeel van ons dagelijks werk. We gebruiken voor veel taken PDF-bestanden, Excel-bestanden of normale tekstbestanden. De tutorials die u op deze website leest, staan ​​in een HTML-bestand dat uw browser verwerkt. Net als veel andere programmeertalen ondersteunt Python ook bestandsverwerking.

Bestanden openen en sluiten

We kunnen eenvoudig een bestand openen in python met behulp van de ingebouwde functie open(). De open-functie accepteert veel argumenten, maar het belangrijkste vereiste argument is het pad naar het bestand dat we willen openen. De functie open() heeft een enkele return, namelijk het bestandsobject.

file_obj = open("bestandsnaam.tekst")

De code opent het bestand met de naam "bestandsnaam".txt', een tekstbestand in dezelfde map. Dan zal het het geretourneerde bestandsobject opslaan in de variabele file_obj.

Wanneer we alle verwerking met het bestand hebben gedaan, moeten we het sluiten van het bestand onthouden. Een bestand wordt in veel gevallen gesloten nadat het programma is beëindigd, maar het is goed om het te sluiten met de functie close() wanneer we het niet nodig hebben. Als we vergeten een bestand te sluiten, verbruikt het gewoon geheugen, wat het programma vertraagt. Het wordt beschouwd als een slechte gewoonte voor grotere projecten.

Om een ​​geopend bestand te sluiten, moeten we de functie close() van het bestandsobject gebruiken.

# hier zullen we de bestandsnaam openen.txt file_obj = open("bestandsnaam.txt") print("Het bestand is succesvol geopend... ") # Nu kunnen we het bestand verwerken # Na het verwerken moeten we het bestand sluiten file_obj.close() print("Het bestand is gesloten... ")

We hebben een bestand geopend met de naam bestandsnaam.tekst in dezelfde map met de functie open() en vervolgens gesloten met de functie close().

Uitgang:

bestand openen en sluiten

Hoewel de functie close() handig is bij het sluiten van een bestand, is er nog een manier om een ​​bestand te sluiten, namelijk.e., door het bestand te openen met de met de verklaring.

Voorbeeld:

met open("bestandsnaam.txt") als file_obj: # Hier gaan de bestandsbewerkingen

De code sluit het bestand automatisch zodra we uit de met blok. De with-instructie sluit ook het bestand als er een fout is, dus het is beter om de with-instructie te gebruiken, omdat we het bestand kunnen sluiten en de bestandsfouten gemakkelijk kunnen afhandelen door het te gebruiken.

Modi voor het openen van bestanden

Hoewel de functie open() met slechts één argument kan worden gebruikt, is i.e., het bestandspad, kunnen we ook een ander argument gebruiken met de naam modus. Het geeft de modus aan die wordt gebruikt om het bestand te openen.

Als we bijvoorbeeld het bestand willen openen om alleen te lezen en het niet willen bewerken, kunnen we de 'r'-modus gebruiken als argument om de functie open() te openen, wat betekent dat de modus alleen-lezen. Dit is ook de standaardmodus voor de functie open(). Voor het schrijven of wijzigen van een bestand moeten we het bestand openen in de schrijfmodus met de 'w' als argument.

Voorbeeld:

met open("bestandsnaam.txt", w"): # Hier komen de instructies # die op het bestand moeten worden uitgevoerd

Deze code opent het bestand in de schrijfmodus, zodat u schrijfbewerkingen op het bestand kunt uitvoeren.

Er kunnen zich ook situaties voordoen waarin we een bestand in binaire modus willen openen om er een bewerking op uit te voeren. Om dat te doen, moeten we mode 'rb' gebruiken om in binaire modus te lezen en 'wb' om in binaire modus te schrijven.

Voorbeeld:

met open("bestandsnaam.dat", "rb"): # Hier komen de instructies # die moeten worden uitgevoerd op het binaire bestand

Het opent een gegevensbestand met de naam bestandsnaam.dat in binaire modus voor alleen lezen.

Tot nu toe hebben we geleerd hoe we een bestand kunnen openen en sluiten. Laten we nu eens kijken hoe we gegevens uit het bestand kunnen lezen met Python.

Bestanden lezen met Python

Er zijn veel manieren waarop we gegevens uit een geopend bestand in python kunnen lezen, maar de meest gebruikelijke manier is door de functies read(), readline() en readlines() te gebruiken.

De lees() functie

Het accepteert het aantal bytes dat uit het bestand moet worden gelezen als argument en leest dat aantal bytes uit het bestand.

Als we geen argument geven of Geen of -1 gebruiken als argument voor de functie read(), dan wordt het hele bestand gelezen in de alleen-lezen modus.

Voorbeeld:

met open("bestandsnaam.txt") als file_obj: # met de functie read() om bytes te lezen # uit het bestandsobject woorden = file_obj.lees() print(woorden)

Uitgang:

gegevens uit het bestand lezen met de functie read() read

Mogelijk moet u de bestandsnaam van het voorbeeldbestand maken.txt met demo-inhoud of geef andere bestanden op in het argument van de functie open() voordat u het programma uitvoert; anders zal python FileNotFoundError gooien zoals hieronder weergegeven:.

Traceback (meest recente oproep als laatste): Bestand "bestand.py", regel 1, in met open("bestandsnaam.txt") as file_obj: FileNotFoundError: [Errno 2] Geen bestand of map: 'bestandsnaam.tekst'

De functie read() is een geweldige manier om bytes uit het bestand te lezen, maar er zijn meer manieren om gegevens uit een bestand te lezen. Er zijn hoofdzakelijk twee andere methoden om gegevens uit een bestand te lezen:. Dit zijn de methoden readline() en readlines().

De leesregel() Functie

De functie readline() wordt gebruikt om een ​​regel tegelijk te lezen. Elke keer dat we het uitvoeren, krijgen we de volgende regel van het bestand.

Voorbeeld:

met open("bestandsnaam.txt","r") als fileobj: print(fileobj.readline()) # print de eerste regel print(fileobj.readline()) # print de tweede regel

Uitvoer: we krijgen de eerste en de tweede regel van het bestand afgedrukt.

gegevens lezen met de functie readline()

We kunnen ook het aantal tekens dat van een regel moet worden gelezen, als argument doorgeven aan de functie readline().

Voorbeeld:

met open("bestandsnaam.txt","r") als fileobj: print(fileobj.readline (15)) # print de eerste 15 bytes

Uitgang:

specificeren van het aantal karakters in de readine() functie

De readlines() functie

De functie readlines() wordt gebruikt om alle regels van een bestand te lezen. Deze functie retourneert een lijst met alle regels die in het bestand aanwezig zijn. Als we niet alle regels hoeven uit te voeren, kunnen we ook het aantal regels specificeren dat we nodig hebben als argument.

Voorbeeld:

met open("bestandsnaam.txt","r") als fileobj: print(fileobj.readlines()) # retourneer een lijst van alle regels

Uitgang:

readlines() functie

Bestanden schrijven met Python

Om gegevens in een bestand te schrijven met python, moeten we de methode write() van het bestandsobject gebruiken. De schrijffunctie accepteert de gegevens als een argument dat we in het bestand willen schrijven.

Voorbeeld:

line = "Dit is een nieuwe regel\n" met open("bestandsnaam.txt","w") als fileobj: print(fileobj.Schrijf lijn))

Bij het uitvoeren van de code, alle bestandsnaam.tekst gegevens worden vervangen door de tekenreeks "Dit is een nieuwe regel". Als u niet over de bestandsnaam.tekst bestand dat eerder aanwezig was, dan zal het er een maken.

Bestanden toevoegen

Tijdens het schrijven van een bestand zoals we deden in de vorige code, merkt u misschien dat de nieuwe gegevens alle eerdere gegevens in het bestand vervangen. Soms zijn we alleen verplicht om de nieuwe gegevens toe te voegen in plaats van de gegevens te herschrijven. We moeten het bestand openen met behulp van de "a" -modus en vervolgens de functie schrijven () gebruiken om de gegevens te schrijven.

Voorbeeld:

line = "\nDit is een nieuwe regel" met open("bestandsnaam.txt","a") als fileobj: print(fileobj.Schrijf lijn))

We zullen een nieuwe regel hebben geschreven in de bestandsnaam.txt zonder de vorige regels te vervangen bij het uitvoeren van de code.

Bestanden hernoemen en verwijderen

Om een ​​bestand te hernoemen, moeten we de functie hernoemen() van de os-module gebruiken. De functie hernoemen accepteert twee belangrijke argumenten, het eerste argument is het pad naar het bestand dat we willen hernoemen en het andere argument is de nieuwe naam van het originele bestand.

Voorbeeld:

importeer os os.hernoemen("bestand1.txt,bestand2.tekst")

De code zal het bestand hernoemen bestand1.tekst met de naam bestand2.tekst.

Om een ​​bestand te verwijderen met python, moeten we de we gebruiken verwijderen() functie van de os module.

Voorbeeld:

importeer os os.remove("voorbeeld.tekst")

Dit zal het bestand verwijderen monster.tekst aanwezig in de huidige map. Je kunt ook het pad van het bestand opgeven als het aanwezig is in andere mappen. Als het bestand niet bestaat in het opgegeven pad, krijgen we een FileNotFoundError. Gebruik de methode voor het afhandelen van uitzonderingen die in het vorige subonderwerp is beschreven om met fouten om te gaan.

Conclusie

In deze tutorial hebben we alles geleerd wat nodig is om met bestanden in python te werken, zoals het maken van bestanden, het lezen van gegevens uit bestanden, het schrijven van gegevens naar bestanden, het verwijderen en hernoemen van bestanden, enz.

U kunt ook onze stapsgewijze handleiding raadplegen over het werken met SQLite-database op python, waar u alles kunt leren wat u moet weten tijdens het werken met SQLite-databases in python.

Linkermuisknop werkt niet op Windows 10
Als u een speciale muis gebruikt met uw laptop of desktopcomputer, maar de linkermuisknop werkt niet not op Windows 10/8/7 om wat voor reden dan ook, ...
Cursor springt of beweegt willekeurig tijdens het typen in Windows 10
Als u merkt dat uw muiscursor vanzelf springt of beweegt, automatisch, willekeurig tijdens het typen op een Windows-laptop of -computer, dan kunnen en...
De scrollrichting van de muis en touchpads omkeren in Windows 10
Muis en Touchpads maken computergebruik niet alleen eenvoudig, maar ook efficiënter en minder tijdrovend. We kunnen ons een leven zonder deze apparate...