A fájl olvasása és írása tárolás vagy későbbi felhasználás céljából gyakori programozási feladat. A Python számos módot kínál a fájlokkal való munkavégzésre, de különösen a szöveges fájlok írására fogunk összpontosítani. A szövegfájlokat egyszerű szöveges adatok tárolására használják, és a Python megkönnyíti a programozók számára az adatok szöveges fájlokba történő olvasását és írását.
Ebben az oktatóanyagban elmagyarázzuk, hogyan írhatnak a felhasználók szöveges fájlba a Python használatával.
A Python beépített funkcióval rendelkezik a fájlok létrehozására, írására vagy olvasására. Kétféle fájlt tud kezelni: normál szöveges fájlokat és bináris fájlokat. A kettő közötti választás az Ön által használt adatoktól és az alkalmazás követelményeitől függ.
Szintaxis a fájl megnyitásához Pythonban:
# Method 1: file = open (path_to_the_file, mode) # Manually required to close the file `file.close()` to ensure that # changes made are saved, and system resources are freed up. # Method 2: with open (path_to_the_file, mode) as file: # It automatically closes the file properly # after the block code is executed.
Az open() függvény különféle paramétereket képes elfogadni. De a felhasználónak az első kettőre kell összpontosítania:
Szövegfájlba íráshoz a felhasználó a következő módot használja:
Mód | Leírás |
---|---|
'Ban ben' | A szövegfájl megnyitására szolgál szövegíráshoz. A fájl ebben a módban csonkolva azt jelenti, hogy a fájl meglévő tartalma törlődik. |
'a' | A szövegfájl megnyitására szolgál szöveg hozzáfűzéséhez. A mutató a fájl végére kerül, és új adatok fűződnek a meglévő tartalomhoz. |
Példa: Annak bemutatása, hogy a felhasználó hogyan írhat szöveges fájlba Python használatával
file.write(' ') file.writelines(' ')
Teljesen a felhasználón múlik, hogy hozzá akarja-e adni a szöveget a következő sorban vagy sem.
az utolsó commit git eltávolítása
2. példa: Bemutatjuk, hogyan kell használni a write() függvényt a szöveges fájl szöveglistájának írásához
# Method 1 - Simple Approach file = open ('writeme.txt', 'w') file.write('writeme') file.close() # Method 2 - Using the 'with' keyword to open a file with open ('writeme.txt', 'w') as file: file.write('writeme')
Kimenet:
Mindkét módszer ugyanazt az eredményt adja.
Szövegfájlba írás lépései Pythonban:
A szövegfájlba való íráshoz a használatával Piton , a felhasználónak a következő lépéseket kell követnie:
1. lépés - Nyissa meg a fájlt - A szöveges fájl írásának megkezdéséhez először meg kell nyitnunk azt a beépített open() függvénnyel, amely két paramétert vesz igénybe: a fájl nevét (beleértve az elérési utat is, ha a fájl nem az aktuális könyvtárban van) és a módot amivel meg akarjuk nyitni a fájlt. Szövegfájlba írás esetén használhatjuk a „w” módot, amely az írási módot jelöli, vagy az „a” módot, amely a hozzáfűzési módot jelöli. Ha a fájl nem létezik, a Python létrehoz egy új fájlt a megadott néven.
# Opening a file 'example.txt' file = open('example.txt', 'w')
Az open() függvény egy fájlobjektumot ad vissza, és ez a fájlobjektum két hasznos funkcióval fog szöveget írni:
- ír()
- írási sorok ()
A write() függvény a karakterlánc szöveges fájlba írásához, a writelines() függvény pedig a fájlban lévő karakterlánc listájának egyidejű írásához.
A writelines() függvény is képes elfogadni az iterálható objektumot. A felhasználó átadhatja a karakterláncok sorát, a karakterláncok halmazát stb.
A következő sorba való íráshoz a felhasználónak kézzel kell hozzáadnia az új sorkaraktert.
2. lépés – Írja be a fájlba: Amint a fájlt írási módban nyitjuk meg, a write() vagy a writelines() függvény segítségével írhatunk bele. A write() metódus egy karakterláncot vesz fel paraméterként, amelyet a fájlba szeretnénk írni. Több sort is írhatunk, ha többször meghívjuk a write() függvényt, vagy újsor karaktereket ( ) használunk a karakterláncok között a sorok elválasztására.
# Using the 'write' function file.write('This is the first line. ') file.write('This is the second line. ') # Using the 'writelines' function file.writelines('This is the first line. This is the second line. ')
3. lépés – Zárja be a fájlt: A felhasználó bezárhatja a szövegfájlt a close() függvény segítségével. Miután beírta a kívánt tartalmat a fájlba, fontos, hogy megfelelően zárja be. A fájl bezárása biztosítja a módosítások mentését, és a rendszererőforrások felszabadulását.
# Closing the file file.close()
2. példa: Annak bemutatása, hogy a felhasználók hogyan adhatnak hozzá új sorkaraktert egy txt fájlhoz
file.write(' ') file.writelines(' ')
Teljesen a felhasználókon múlik, hogy hozzá akarják-e adni a szöveget a következő sorban vagy sem.
3. példa: Annak bemutatása, hogyan kell használni a write() függvényt a szövegek vagy karakterláncok listájának szövegfájlba írásához
# Creating a list of strings lines_1 = [ 'This is an example', 'to show how a user can write in a text file using Python'] with open('text.txt', 'w') as file: # Iterating over each element of the list for line_1 in lines_1: file.write(line_1) # Adding the line to the text.txt file.write(' ') # Adding a new line character
Kimenet:
Magyarázat:
A fenti példában először létrehoztunk egy listát a sztringekből lines_1 néven, majd megnyitottuk a fájlt az open() függvénnyel a „with” utasítással. Ezután for-ciklust használtunk a lista elemeinek iterálására, majd megírtuk a sort, és egy új sorkaraktert adtunk a fájlhoz. Új sorkarakter kerül a for ciklus végére, és a mutató a következő sorba kerül.
Ha a text.txt fájl nem létezik a mappában, az open() függvény létrehozza az új fájlt, és ennek megfelelően hajtja végre a műveleteket.
4. példa: Annak bemutatása, hogy a felhasználók hogyan írhatják be a szöveges karakterláncok listáját a text.txt fájlba a writelines() függvény segítségével:
# Creating a list of strings lines_1 = [ 'This is an example ', 'to show how a user can write in a text file using writelines() function in Python.'] # Opening the text.txt file with open('text.txt', 'w') as file: # Using the writelines() function file.writelines(lines_1)
Kimenet:
Magyarázat:
A fenti példában a writelines() függvény minden listaelemet egyetlen sorba ír a fájlban.
Ha a felhasználó minden listaelemet sorként kezel, akkor új sorkarakterrel kell összekapcsolnia.
teáskanál vs evőkanál
4. példa: Annak bemutatása, hogy a felhasználó hogyan kapcsolhatja össze az újsor karaktert a text.txt fájl sor egyes elemeivel
A 3. számú példában már láthattuk, hogyan tudunk minden listaelem után egy új sorkaraktert hozzáadni. A writelines() függvény használata közben egy új sorkaraktert kell hozzáadnunk a stringhez.
# Creating a list of strings lines_1 = [ 'This is an example ', 'to show how a user can link a new line character ', 'with each element of the list. '] # Opening the text.txt file with open('text.txt', 'w') as file: # Using the writelines function file.writelines(lines_1)
Kimenet:
Magyarázat:
A fenti példában a writelines() függvény a listaelemet a text.txt fájlba írja, ahol minden listaelem egy új sorkarakterrel végződik.
Következtetés
Ebben az oktatóanyagban elmagyaráztuk, hogyan írhat a felhasználó szöveget egy szövegfájlba a Python és annak különböző funkciói segítségével. Először a normál és bináris szövegfájlokról tanultunk, majd a fájl megnyitásának szintaxisát. Megvizsgáltuk a „w” (írási mód) és az „a” (hozzáfűzési mód) közötti különbséget is. Ezután megtanultuk a Python szövegfájlba írásának lépéseit, és különféle példákat implementáltunk a szövegfájlba írás különböző módszereinek megértéséhez.