Bearbeitung von Dateiinhalten
Grundlegende Techniken zur Dateibearbeitung
Lesen von Dateiinhalten
## Reading entire file
with open('example.txt', 'r') as file:
content = file.read()
## Reading line by line
with open('example.txt', 'r') as file:
lines = file.readlines()
Strategien zur Modifikation
graph TD
A[File Modification] --> B[In-Memory Editing]
A --> C[Direct File Replacement]
A --> D[Temporary File Method]
Ansatz der In-Memory-Bearbeitung
def modify_file_content(filename, old_text, new_text):
## Read the entire file
with open(filename, 'r') as file:
content = file.read()
## Replace content
modified_content = content.replace(old_text, new_text)
## Write back to file
with open(filename, 'w') as file:
file.write(modified_content)
Fortgeschrittene Bearbeitungstechniken
Methoden zur Textersetzung
Methode |
Beschreibung |
Anwendungsfall |
replace() |
Einfache Textersetzung |
Kleine Dateien |
regex |
Komplexes Musterabgleich |
Fortgeschrittene Ersetzungen |
fileinput |
Zeilenweise Bearbeitung |
Große Dateien |
Bearbeitung mit regulären Ausdrücken
import re
def regex_file_edit(filename, pattern, replacement):
with open(filename, 'r') as file:
content = file.read()
modified_content = re.sub(pattern, replacement, content)
with open(filename, 'w') as file:
file.write(modified_content)
## Example usage
regex_file_edit('config.txt', r'version=\d+', 'version=2.0')
Sichere Praktiken bei der Dateimodifikation
Sicherungskopie vor der Bearbeitung
import shutil
def safe_file_modify(source_file):
## Create backup
backup_file = source_file + '.bak'
shutil.copy2(source_file, backup_file)
## Perform modifications
#... modification logic here...
Fehlerbehandlung bei der Dateibearbeitung
def robust_file_edit(filename):
try:
with open(filename, 'r+') as file:
## Editing operations
content = file.read()
## Modification logic
except PermissionError:
print(f"Cannot modify {filename}. Check permissions.")
except FileNotFoundError:
print(f"File {filename} not found.")
Indem LabEx - Entwickler diese Techniken beherrschen, können sie Dateiinhalte effizient, sicher und präzise manipulieren.